// Version 1.41
// Generated 25/01/2017 GMT

/*
 * Copyright © 2017, Microchip Technology Inc. and its subsidiaries ("Microchip")
 * All rights reserved.
 * 
 * This software is developed by Microchip Technology Inc. and its subsidiaries ("Microchip").
 * 
 * Redistribution and use in source and binary forms, with or without modification, are
 * permitted provided that the following conditions are met:
 * 
 *     1. Redistributions of source code must retain the above copyright notice, this list of
 *        conditions and the following disclaimer.
 * 
 *     2. Redistributions in binary form must reproduce the above copyright notice, this list
 *        of conditions and the following disclaimer in the documentation and/or other
 *        materials provided with the distribution.
 * 
 *     3. Microchip's name may not be used to endorse or promote products derived from this
 *        software without specific prior written permission.
 * 
 * THIS SOFTWARE IS PROVIDED BY MICROCHIP "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
 * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
 * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL MICROCHIP BE LIABLE FOR ANY DIRECT, INDIRECT,
 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING BUT NOT LIMITED TO
 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA OR PROFITS; OR BUSINESS
 * INTERRUPTION) HOWSOEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 */

#ifndef _PIC18F24K22_H_
#define _PIC18F24K22_H_

/*
 * C Header file for the Microchip PIC Microcontroller
 * PIC18F24K22
 */
#ifndef __XC8
#warning Header file pic18f24k22.h included directly. Use #include <xc.h> instead.
#endif

/*
 * Register Definitions
 */

// Register: ANSELA
extern volatile unsigned char           ANSELA              @ 0xF38;
#ifndef _LIB_BUILD
asm("ANSELA equ 0F38h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned ANSA0                  :1;
        unsigned ANSA1                  :1;
        unsigned ANSA2                  :1;
        unsigned ANSA3                  :1;
        unsigned                        :1;
        unsigned ANSA5                  :1;
    };
} ANSELAbits_t;
extern volatile ANSELAbits_t ANSELAbits @ 0xF38;
// bitfield macros
#define _ANSELA_ANSA0_POSN                                  0x0
#define _ANSELA_ANSA0_POSITION                              0x0
#define _ANSELA_ANSA0_SIZE                                  0x1
#define _ANSELA_ANSA0_LENGTH                                0x1
#define _ANSELA_ANSA0_MASK                                  0x1
#define _ANSELA_ANSA1_POSN                                  0x1
#define _ANSELA_ANSA1_POSITION                              0x1
#define _ANSELA_ANSA1_SIZE                                  0x1
#define _ANSELA_ANSA1_LENGTH                                0x1
#define _ANSELA_ANSA1_MASK                                  0x2
#define _ANSELA_ANSA2_POSN                                  0x2
#define _ANSELA_ANSA2_POSITION                              0x2
#define _ANSELA_ANSA2_SIZE                                  0x1
#define _ANSELA_ANSA2_LENGTH                                0x1
#define _ANSELA_ANSA2_MASK                                  0x4
#define _ANSELA_ANSA3_POSN                                  0x3
#define _ANSELA_ANSA3_POSITION                              0x3
#define _ANSELA_ANSA3_SIZE                                  0x1
#define _ANSELA_ANSA3_LENGTH                                0x1
#define _ANSELA_ANSA3_MASK                                  0x8
#define _ANSELA_ANSA5_POSN                                  0x5
#define _ANSELA_ANSA5_POSITION                              0x5
#define _ANSELA_ANSA5_SIZE                                  0x1
#define _ANSELA_ANSA5_LENGTH                                0x1
#define _ANSELA_ANSA5_MASK                                  0x20

// Register: ANSELB
extern volatile unsigned char           ANSELB              @ 0xF39;
#ifndef _LIB_BUILD
asm("ANSELB equ 0F39h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned ANSB0                  :1;
        unsigned ANSB1                  :1;
        unsigned ANSB2                  :1;
        unsigned ANSB3                  :1;
        unsigned ANSB4                  :1;
        unsigned ANSB5                  :1;
    };
} ANSELBbits_t;
extern volatile ANSELBbits_t ANSELBbits @ 0xF39;
// bitfield macros
#define _ANSELB_ANSB0_POSN                                  0x0
#define _ANSELB_ANSB0_POSITION                              0x0
#define _ANSELB_ANSB0_SIZE                                  0x1
#define _ANSELB_ANSB0_LENGTH                                0x1
#define _ANSELB_ANSB0_MASK                                  0x1
#define _ANSELB_ANSB1_POSN                                  0x1
#define _ANSELB_ANSB1_POSITION                              0x1
#define _ANSELB_ANSB1_SIZE                                  0x1
#define _ANSELB_ANSB1_LENGTH                                0x1
#define _ANSELB_ANSB1_MASK                                  0x2
#define _ANSELB_ANSB2_POSN                                  0x2
#define _ANSELB_ANSB2_POSITION                              0x2
#define _ANSELB_ANSB2_SIZE                                  0x1
#define _ANSELB_ANSB2_LENGTH                                0x1
#define _ANSELB_ANSB2_MASK                                  0x4
#define _ANSELB_ANSB3_POSN                                  0x3
#define _ANSELB_ANSB3_POSITION                              0x3
#define _ANSELB_ANSB3_SIZE                                  0x1
#define _ANSELB_ANSB3_LENGTH                                0x1
#define _ANSELB_ANSB3_MASK                                  0x8
#define _ANSELB_ANSB4_POSN                                  0x4
#define _ANSELB_ANSB4_POSITION                              0x4
#define _ANSELB_ANSB4_SIZE                                  0x1
#define _ANSELB_ANSB4_LENGTH                                0x1
#define _ANSELB_ANSB4_MASK                                  0x10
#define _ANSELB_ANSB5_POSN                                  0x5
#define _ANSELB_ANSB5_POSITION                              0x5
#define _ANSELB_ANSB5_SIZE                                  0x1
#define _ANSELB_ANSB5_LENGTH                                0x1
#define _ANSELB_ANSB5_MASK                                  0x20

// Register: ANSELC
extern volatile unsigned char           ANSELC              @ 0xF3A;
#ifndef _LIB_BUILD
asm("ANSELC equ 0F3Ah");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned                        :2;
        unsigned ANSC2                  :1;
        unsigned ANSC3                  :1;
        unsigned ANSC4                  :1;
        unsigned ANSC5                  :1;
        unsigned ANSC6                  :1;
        unsigned ANSC7                  :1;
    };
} ANSELCbits_t;
extern volatile ANSELCbits_t ANSELCbits @ 0xF3A;
// bitfield macros
#define _ANSELC_ANSC2_POSN                                  0x2
#define _ANSELC_ANSC2_POSITION                              0x2
#define _ANSELC_ANSC2_SIZE                                  0x1
#define _ANSELC_ANSC2_LENGTH                                0x1
#define _ANSELC_ANSC2_MASK                                  0x4
#define _ANSELC_ANSC3_POSN                                  0x3
#define _ANSELC_ANSC3_POSITION                              0x3
#define _ANSELC_ANSC3_SIZE                                  0x1
#define _ANSELC_ANSC3_LENGTH                                0x1
#define _ANSELC_ANSC3_MASK                                  0x8
#define _ANSELC_ANSC4_POSN                                  0x4
#define _ANSELC_ANSC4_POSITION                              0x4
#define _ANSELC_ANSC4_SIZE                                  0x1
#define _ANSELC_ANSC4_LENGTH                                0x1
#define _ANSELC_ANSC4_MASK                                  0x10
#define _ANSELC_ANSC5_POSN                                  0x5
#define _ANSELC_ANSC5_POSITION                              0x5
#define _ANSELC_ANSC5_SIZE                                  0x1
#define _ANSELC_ANSC5_LENGTH                                0x1
#define _ANSELC_ANSC5_MASK                                  0x20
#define _ANSELC_ANSC6_POSN                                  0x6
#define _ANSELC_ANSC6_POSITION                              0x6
#define _ANSELC_ANSC6_SIZE                                  0x1
#define _ANSELC_ANSC6_LENGTH                                0x1
#define _ANSELC_ANSC6_MASK                                  0x40
#define _ANSELC_ANSC7_POSN                                  0x7
#define _ANSELC_ANSC7_POSITION                              0x7
#define _ANSELC_ANSC7_SIZE                                  0x1
#define _ANSELC_ANSC7_LENGTH                                0x1
#define _ANSELC_ANSC7_MASK                                  0x80

// Register: PMD2
extern volatile unsigned char           PMD2                @ 0xF3D;
#ifndef _LIB_BUILD
asm("PMD2 equ 0F3Dh");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned ADCMD                  :1;
        unsigned CMP1MD                 :1;
        unsigned CMP2MD                 :1;
        unsigned CTMUMD                 :1;
    };
} PMD2bits_t;
extern volatile PMD2bits_t PMD2bits @ 0xF3D;
// bitfield macros
#define _PMD2_ADCMD_POSN                                    0x0
#define _PMD2_ADCMD_POSITION                                0x0
#define _PMD2_ADCMD_SIZE                                    0x1
#define _PMD2_ADCMD_LENGTH                                  0x1
#define _PMD2_ADCMD_MASK                                    0x1
#define _PMD2_CMP1MD_POSN                                   0x1
#define _PMD2_CMP1MD_POSITION                               0x1
#define _PMD2_CMP1MD_SIZE                                   0x1
#define _PMD2_CMP1MD_LENGTH                                 0x1
#define _PMD2_CMP1MD_MASK                                   0x2
#define _PMD2_CMP2MD_POSN                                   0x2
#define _PMD2_CMP2MD_POSITION                               0x2
#define _PMD2_CMP2MD_SIZE                                   0x1
#define _PMD2_CMP2MD_LENGTH                                 0x1
#define _PMD2_CMP2MD_MASK                                   0x4
#define _PMD2_CTMUMD_POSN                                   0x3
#define _PMD2_CTMUMD_POSITION                               0x3
#define _PMD2_CTMUMD_SIZE                                   0x1
#define _PMD2_CTMUMD_LENGTH                                 0x1
#define _PMD2_CTMUMD_MASK                                   0x8

// Register: PMD1
extern volatile unsigned char           PMD1                @ 0xF3E;
#ifndef _LIB_BUILD
asm("PMD1 equ 0F3Eh");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned CCP1MD                 :1;
        unsigned CCP2MD                 :1;
        unsigned CCP3MD                 :1;
        unsigned CCP4MD                 :1;
        unsigned CCP5MD                 :1;
        unsigned                        :1;
        unsigned MSSP1MD                :1;
        unsigned MSSP2MD                :1;
    };
    struct {
        unsigned EMBMD                  :1;
    };
} PMD1bits_t;
extern volatile PMD1bits_t PMD1bits @ 0xF3E;
// bitfield macros
#define _PMD1_CCP1MD_POSN                                   0x0
#define _PMD1_CCP1MD_POSITION                               0x0
#define _PMD1_CCP1MD_SIZE                                   0x1
#define _PMD1_CCP1MD_LENGTH                                 0x1
#define _PMD1_CCP1MD_MASK                                   0x1
#define _PMD1_CCP2MD_POSN                                   0x1
#define _PMD1_CCP2MD_POSITION                               0x1
#define _PMD1_CCP2MD_SIZE                                   0x1
#define _PMD1_CCP2MD_LENGTH                                 0x1
#define _PMD1_CCP2MD_MASK                                   0x2
#define _PMD1_CCP3MD_POSN                                   0x2
#define _PMD1_CCP3MD_POSITION                               0x2
#define _PMD1_CCP3MD_SIZE                                   0x1
#define _PMD1_CCP3MD_LENGTH                                 0x1
#define _PMD1_CCP3MD_MASK                                   0x4
#define _PMD1_CCP4MD_POSN                                   0x3
#define _PMD1_CCP4MD_POSITION                               0x3
#define _PMD1_CCP4MD_SIZE                                   0x1
#define _PMD1_CCP4MD_LENGTH                                 0x1
#define _PMD1_CCP4MD_MASK                                   0x8
#define _PMD1_CCP5MD_POSN                                   0x4
#define _PMD1_CCP5MD_POSITION                               0x4
#define _PMD1_CCP5MD_SIZE                                   0x1
#define _PMD1_CCP5MD_LENGTH                                 0x1
#define _PMD1_CCP5MD_MASK                                   0x10
#define _PMD1_MSSP1MD_POSN                                  0x6
#define _PMD1_MSSP1MD_POSITION                              0x6
#define _PMD1_MSSP1MD_SIZE                                  0x1
#define _PMD1_MSSP1MD_LENGTH                                0x1
#define _PMD1_MSSP1MD_MASK                                  0x40
#define _PMD1_MSSP2MD_POSN                                  0x7
#define _PMD1_MSSP2MD_POSITION                              0x7
#define _PMD1_MSSP2MD_SIZE                                  0x1
#define _PMD1_MSSP2MD_LENGTH                                0x1
#define _PMD1_MSSP2MD_MASK                                  0x80
#define _PMD1_EMBMD_POSN                                    0x0
#define _PMD1_EMBMD_POSITION                                0x0
#define _PMD1_EMBMD_SIZE                                    0x1
#define _PMD1_EMBMD_LENGTH                                  0x1
#define _PMD1_EMBMD_MASK                                    0x1

// Register: PMD0
extern volatile unsigned char           PMD0                @ 0xF3F;
#ifndef _LIB_BUILD
asm("PMD0 equ 0F3Fh");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned TMR1MD                 :1;
        unsigned TMR2MD                 :1;
        unsigned TMR3MD                 :1;
        unsigned TMR4MD                 :1;
        unsigned TMR5MD                 :1;
        unsigned TMR6MD                 :1;
        unsigned UART1MD                :1;
        unsigned UART2MD                :1;
    };
    struct {
        unsigned                        :1;
        unsigned SPI1MD                 :1;
        unsigned SPI2MD                 :1;
    };
} PMD0bits_t;
extern volatile PMD0bits_t PMD0bits @ 0xF3F;
// bitfield macros
#define _PMD0_TMR1MD_POSN                                   0x0
#define _PMD0_TMR1MD_POSITION                               0x0
#define _PMD0_TMR1MD_SIZE                                   0x1
#define _PMD0_TMR1MD_LENGTH                                 0x1
#define _PMD0_TMR1MD_MASK                                   0x1
#define _PMD0_TMR2MD_POSN                                   0x1
#define _PMD0_TMR2MD_POSITION                               0x1
#define _PMD0_TMR2MD_SIZE                                   0x1
#define _PMD0_TMR2MD_LENGTH                                 0x1
#define _PMD0_TMR2MD_MASK                                   0x2
#define _PMD0_TMR3MD_POSN                                   0x2
#define _PMD0_TMR3MD_POSITION                               0x2
#define _PMD0_TMR3MD_SIZE                                   0x1
#define _PMD0_TMR3MD_LENGTH                                 0x1
#define _PMD0_TMR3MD_MASK                                   0x4
#define _PMD0_TMR4MD_POSN                                   0x3
#define _PMD0_TMR4MD_POSITION                               0x3
#define _PMD0_TMR4MD_SIZE                                   0x1
#define _PMD0_TMR4MD_LENGTH                                 0x1
#define _PMD0_TMR4MD_MASK                                   0x8
#define _PMD0_TMR5MD_POSN                                   0x4
#define _PMD0_TMR5MD_POSITION                               0x4
#define _PMD0_TMR5MD_SIZE                                   0x1
#define _PMD0_TMR5MD_LENGTH                                 0x1
#define _PMD0_TMR5MD_MASK                                   0x10
#define _PMD0_TMR6MD_POSN                                   0x5
#define _PMD0_TMR6MD_POSITION                               0x5
#define _PMD0_TMR6MD_SIZE                                   0x1
#define _PMD0_TMR6MD_LENGTH                                 0x1
#define _PMD0_TMR6MD_MASK                                   0x20
#define _PMD0_UART1MD_POSN                                  0x6
#define _PMD0_UART1MD_POSITION                              0x6
#define _PMD0_UART1MD_SIZE                                  0x1
#define _PMD0_UART1MD_LENGTH                                0x1
#define _PMD0_UART1MD_MASK                                  0x40
#define _PMD0_UART2MD_POSN                                  0x7
#define _PMD0_UART2MD_POSITION                              0x7
#define _PMD0_UART2MD_SIZE                                  0x1
#define _PMD0_UART2MD_LENGTH                                0x1
#define _PMD0_UART2MD_MASK                                  0x80
#define _PMD0_SPI1MD_POSN                                   0x1
#define _PMD0_SPI1MD_POSITION                               0x1
#define _PMD0_SPI1MD_SIZE                                   0x1
#define _PMD0_SPI1MD_LENGTH                                 0x1
#define _PMD0_SPI1MD_MASK                                   0x2
#define _PMD0_SPI2MD_POSN                                   0x2
#define _PMD0_SPI2MD_POSITION                               0x2
#define _PMD0_SPI2MD_SIZE                                   0x1
#define _PMD0_SPI2MD_LENGTH                                 0x1
#define _PMD0_SPI2MD_MASK                                   0x4

// Register: VREFCON2
extern volatile unsigned char           VREFCON2            @ 0xF40;
#ifndef _LIB_BUILD
asm("VREFCON2 equ 0F40h");
#endif
// aliases
extern volatile unsigned char           DACCON1             @ 0xF40;
#ifndef _LIB_BUILD
asm("DACCON1 equ 0F40h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned DACR                   :5;
    };
    struct {
        unsigned DACR0                  :1;
        unsigned DACR1                  :1;
        unsigned DACR2                  :1;
        unsigned DACR3                  :1;
        unsigned DACR4                  :1;
    };
} VREFCON2bits_t;
extern volatile VREFCON2bits_t VREFCON2bits @ 0xF40;
// bitfield macros
#define _VREFCON2_DACR_POSN                                 0x0
#define _VREFCON2_DACR_POSITION                             0x0
#define _VREFCON2_DACR_SIZE                                 0x5
#define _VREFCON2_DACR_LENGTH                               0x5
#define _VREFCON2_DACR_MASK                                 0x1F
#define _VREFCON2_DACR0_POSN                                0x0
#define _VREFCON2_DACR0_POSITION                            0x0
#define _VREFCON2_DACR0_SIZE                                0x1
#define _VREFCON2_DACR0_LENGTH                              0x1
#define _VREFCON2_DACR0_MASK                                0x1
#define _VREFCON2_DACR1_POSN                                0x1
#define _VREFCON2_DACR1_POSITION                            0x1
#define _VREFCON2_DACR1_SIZE                                0x1
#define _VREFCON2_DACR1_LENGTH                              0x1
#define _VREFCON2_DACR1_MASK                                0x2
#define _VREFCON2_DACR2_POSN                                0x2
#define _VREFCON2_DACR2_POSITION                            0x2
#define _VREFCON2_DACR2_SIZE                                0x1
#define _VREFCON2_DACR2_LENGTH                              0x1
#define _VREFCON2_DACR2_MASK                                0x4
#define _VREFCON2_DACR3_POSN                                0x3
#define _VREFCON2_DACR3_POSITION                            0x3
#define _VREFCON2_DACR3_SIZE                                0x1
#define _VREFCON2_DACR3_LENGTH                              0x1
#define _VREFCON2_DACR3_MASK                                0x8
#define _VREFCON2_DACR4_POSN                                0x4
#define _VREFCON2_DACR4_POSITION                            0x4
#define _VREFCON2_DACR4_SIZE                                0x1
#define _VREFCON2_DACR4_LENGTH                              0x1
#define _VREFCON2_DACR4_MASK                                0x10
// alias bitfield definitions
typedef union {
    struct {
        unsigned DACR                   :5;
    };
    struct {
        unsigned DACR0                  :1;
        unsigned DACR1                  :1;
        unsigned DACR2                  :1;
        unsigned DACR3                  :1;
        unsigned DACR4                  :1;
    };
} DACCON1bits_t;
extern volatile DACCON1bits_t DACCON1bits @ 0xF40;
// bitfield macros
#define _DACCON1_DACR_POSN                                  0x0
#define _DACCON1_DACR_POSITION                              0x0
#define _DACCON1_DACR_SIZE                                  0x5
#define _DACCON1_DACR_LENGTH                                0x5
#define _DACCON1_DACR_MASK                                  0x1F
#define _DACCON1_DACR0_POSN                                 0x0
#define _DACCON1_DACR0_POSITION                             0x0
#define _DACCON1_DACR0_SIZE                                 0x1
#define _DACCON1_DACR0_LENGTH                               0x1
#define _DACCON1_DACR0_MASK                                 0x1
#define _DACCON1_DACR1_POSN                                 0x1
#define _DACCON1_DACR1_POSITION                             0x1
#define _DACCON1_DACR1_SIZE                                 0x1
#define _DACCON1_DACR1_LENGTH                               0x1
#define _DACCON1_DACR1_MASK                                 0x2
#define _DACCON1_DACR2_POSN                                 0x2
#define _DACCON1_DACR2_POSITION                             0x2
#define _DACCON1_DACR2_SIZE                                 0x1
#define _DACCON1_DACR2_LENGTH                               0x1
#define _DACCON1_DACR2_MASK                                 0x4
#define _DACCON1_DACR3_POSN                                 0x3
#define _DACCON1_DACR3_POSITION                             0x3
#define _DACCON1_DACR3_SIZE                                 0x1
#define _DACCON1_DACR3_LENGTH                               0x1
#define _DACCON1_DACR3_MASK                                 0x8
#define _DACCON1_DACR4_POSN                                 0x4
#define _DACCON1_DACR4_POSITION                             0x4
#define _DACCON1_DACR4_SIZE                                 0x1
#define _DACCON1_DACR4_LENGTH                               0x1
#define _DACCON1_DACR4_MASK                                 0x10

// Register: VREFCON1
extern volatile unsigned char           VREFCON1            @ 0xF41;
#ifndef _LIB_BUILD
asm("VREFCON1 equ 0F41h");
#endif
// aliases
extern volatile unsigned char           DACCON0             @ 0xF41;
#ifndef _LIB_BUILD
asm("DACCON0 equ 0F41h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned DACNSS                 :1;
        unsigned                        :1;
        unsigned DACPSS                 :2;
        unsigned                        :1;
        unsigned DACOE                  :1;
        unsigned DACLPS                 :1;
        unsigned DACEN                  :1;
    };
    struct {
        unsigned                        :2;
        unsigned DACPSS0                :1;
        unsigned DACPSS1                :1;
    };
} VREFCON1bits_t;
extern volatile VREFCON1bits_t VREFCON1bits @ 0xF41;
// bitfield macros
#define _VREFCON1_DACNSS_POSN                               0x0
#define _VREFCON1_DACNSS_POSITION                           0x0
#define _VREFCON1_DACNSS_SIZE                               0x1
#define _VREFCON1_DACNSS_LENGTH                             0x1
#define _VREFCON1_DACNSS_MASK                               0x1
#define _VREFCON1_DACPSS_POSN                               0x2
#define _VREFCON1_DACPSS_POSITION                           0x2
#define _VREFCON1_DACPSS_SIZE                               0x2
#define _VREFCON1_DACPSS_LENGTH                             0x2
#define _VREFCON1_DACPSS_MASK                               0xC
#define _VREFCON1_DACOE_POSN                                0x5
#define _VREFCON1_DACOE_POSITION                            0x5
#define _VREFCON1_DACOE_SIZE                                0x1
#define _VREFCON1_DACOE_LENGTH                              0x1
#define _VREFCON1_DACOE_MASK                                0x20
#define _VREFCON1_DACLPS_POSN                               0x6
#define _VREFCON1_DACLPS_POSITION                           0x6
#define _VREFCON1_DACLPS_SIZE                               0x1
#define _VREFCON1_DACLPS_LENGTH                             0x1
#define _VREFCON1_DACLPS_MASK                               0x40
#define _VREFCON1_DACEN_POSN                                0x7
#define _VREFCON1_DACEN_POSITION                            0x7
#define _VREFCON1_DACEN_SIZE                                0x1
#define _VREFCON1_DACEN_LENGTH                              0x1
#define _VREFCON1_DACEN_MASK                                0x80
#define _VREFCON1_DACPSS0_POSN                              0x2
#define _VREFCON1_DACPSS0_POSITION                          0x2
#define _VREFCON1_DACPSS0_SIZE                              0x1
#define _VREFCON1_DACPSS0_LENGTH                            0x1
#define _VREFCON1_DACPSS0_MASK                              0x4
#define _VREFCON1_DACPSS1_POSN                              0x3
#define _VREFCON1_DACPSS1_POSITION                          0x3
#define _VREFCON1_DACPSS1_SIZE                              0x1
#define _VREFCON1_DACPSS1_LENGTH                            0x1
#define _VREFCON1_DACPSS1_MASK                              0x8
// alias bitfield definitions
typedef union {
    struct {
        unsigned DACNSS                 :1;
        unsigned                        :1;
        unsigned DACPSS                 :2;
        unsigned                        :1;
        unsigned DACOE                  :1;
        unsigned DACLPS                 :1;
        unsigned DACEN                  :1;
    };
    struct {
        unsigned                        :2;
        unsigned DACPSS0                :1;
        unsigned DACPSS1                :1;
    };
} DACCON0bits_t;
extern volatile DACCON0bits_t DACCON0bits @ 0xF41;
// bitfield macros
#define _DACCON0_DACNSS_POSN                                0x0
#define _DACCON0_DACNSS_POSITION                            0x0
#define _DACCON0_DACNSS_SIZE                                0x1
#define _DACCON0_DACNSS_LENGTH                              0x1
#define _DACCON0_DACNSS_MASK                                0x1
#define _DACCON0_DACPSS_POSN                                0x2
#define _DACCON0_DACPSS_POSITION                            0x2
#define _DACCON0_DACPSS_SIZE                                0x2
#define _DACCON0_DACPSS_LENGTH                              0x2
#define _DACCON0_DACPSS_MASK                                0xC
#define _DACCON0_DACOE_POSN                                 0x5
#define _DACCON0_DACOE_POSITION                             0x5
#define _DACCON0_DACOE_SIZE                                 0x1
#define _DACCON0_DACOE_LENGTH                               0x1
#define _DACCON0_DACOE_MASK                                 0x20
#define _DACCON0_DACLPS_POSN                                0x6
#define _DACCON0_DACLPS_POSITION                            0x6
#define _DACCON0_DACLPS_SIZE                                0x1
#define _DACCON0_DACLPS_LENGTH                              0x1
#define _DACCON0_DACLPS_MASK                                0x40
#define _DACCON0_DACEN_POSN                                 0x7
#define _DACCON0_DACEN_POSITION                             0x7
#define _DACCON0_DACEN_SIZE                                 0x1
#define _DACCON0_DACEN_LENGTH                               0x1
#define _DACCON0_DACEN_MASK                                 0x80
#define _DACCON0_DACPSS0_POSN                               0x2
#define _DACCON0_DACPSS0_POSITION                           0x2
#define _DACCON0_DACPSS0_SIZE                               0x1
#define _DACCON0_DACPSS0_LENGTH                             0x1
#define _DACCON0_DACPSS0_MASK                               0x4
#define _DACCON0_DACPSS1_POSN                               0x3
#define _DACCON0_DACPSS1_POSITION                           0x3
#define _DACCON0_DACPSS1_SIZE                               0x1
#define _DACCON0_DACPSS1_LENGTH                             0x1
#define _DACCON0_DACPSS1_MASK                               0x8

// Register: VREFCON0
extern volatile unsigned char           VREFCON0            @ 0xF42;
#ifndef _LIB_BUILD
asm("VREFCON0 equ 0F42h");
#endif
// aliases
extern volatile unsigned char           FVRCON              @ 0xF42;
#ifndef _LIB_BUILD
asm("FVRCON equ 0F42h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned                        :4;
        unsigned FVRS                   :2;
        unsigned FVRST                  :1;
        unsigned FVREN                  :1;
    };
    struct {
        unsigned                        :4;
        unsigned FVRS0                  :1;
        unsigned FVRS1                  :1;
    };
} VREFCON0bits_t;
extern volatile VREFCON0bits_t VREFCON0bits @ 0xF42;
// bitfield macros
#define _VREFCON0_FVRS_POSN                                 0x4
#define _VREFCON0_FVRS_POSITION                             0x4
#define _VREFCON0_FVRS_SIZE                                 0x2
#define _VREFCON0_FVRS_LENGTH                               0x2
#define _VREFCON0_FVRS_MASK                                 0x30
#define _VREFCON0_FVRST_POSN                                0x6
#define _VREFCON0_FVRST_POSITION                            0x6
#define _VREFCON0_FVRST_SIZE                                0x1
#define _VREFCON0_FVRST_LENGTH                              0x1
#define _VREFCON0_FVRST_MASK                                0x40
#define _VREFCON0_FVREN_POSN                                0x7
#define _VREFCON0_FVREN_POSITION                            0x7
#define _VREFCON0_FVREN_SIZE                                0x1
#define _VREFCON0_FVREN_LENGTH                              0x1
#define _VREFCON0_FVREN_MASK                                0x80
#define _VREFCON0_FVRS0_POSN                                0x4
#define _VREFCON0_FVRS0_POSITION                            0x4
#define _VREFCON0_FVRS0_SIZE                                0x1
#define _VREFCON0_FVRS0_LENGTH                              0x1
#define _VREFCON0_FVRS0_MASK                                0x10
#define _VREFCON0_FVRS1_POSN                                0x5
#define _VREFCON0_FVRS1_POSITION                            0x5
#define _VREFCON0_FVRS1_SIZE                                0x1
#define _VREFCON0_FVRS1_LENGTH                              0x1
#define _VREFCON0_FVRS1_MASK                                0x20
// alias bitfield definitions
typedef union {
    struct {
        unsigned                        :4;
        unsigned FVRS                   :2;
        unsigned FVRST                  :1;
        unsigned FVREN                  :1;
    };
    struct {
        unsigned                        :4;
        unsigned FVRS0                  :1;
        unsigned FVRS1                  :1;
    };
} FVRCONbits_t;
extern volatile FVRCONbits_t FVRCONbits @ 0xF42;
// bitfield macros
#define _FVRCON_FVRS_POSN                                   0x4
#define _FVRCON_FVRS_POSITION                               0x4
#define _FVRCON_FVRS_SIZE                                   0x2
#define _FVRCON_FVRS_LENGTH                                 0x2
#define _FVRCON_FVRS_MASK                                   0x30
#define _FVRCON_FVRST_POSN                                  0x6
#define _FVRCON_FVRST_POSITION                              0x6
#define _FVRCON_FVRST_SIZE                                  0x1
#define _FVRCON_FVRST_LENGTH                                0x1
#define _FVRCON_FVRST_MASK                                  0x40
#define _FVRCON_FVREN_POSN                                  0x7
#define _FVRCON_FVREN_POSITION                              0x7
#define _FVRCON_FVREN_SIZE                                  0x1
#define _FVRCON_FVREN_LENGTH                                0x1
#define _FVRCON_FVREN_MASK                                  0x80
#define _FVRCON_FVRS0_POSN                                  0x4
#define _FVRCON_FVRS0_POSITION                              0x4
#define _FVRCON_FVRS0_SIZE                                  0x1
#define _FVRCON_FVRS0_LENGTH                                0x1
#define _FVRCON_FVRS0_MASK                                  0x10
#define _FVRCON_FVRS1_POSN                                  0x5
#define _FVRCON_FVRS1_POSITION                              0x5
#define _FVRCON_FVRS1_SIZE                                  0x1
#define _FVRCON_FVRS1_LENGTH                                0x1
#define _FVRCON_FVRS1_MASK                                  0x20

// Register: CTMUICON
extern volatile unsigned char           CTMUICON            @ 0xF43;
#ifndef _LIB_BUILD
asm("CTMUICON equ 0F43h");
#endif
// aliases
extern volatile unsigned char           CTMUICONH           @ 0xF43;
#ifndef _LIB_BUILD
asm("CTMUICONH equ 0F43h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned IRNG                   :2;
        unsigned ITRIM                  :6;
    };
    struct {
        unsigned IRNG0                  :1;
        unsigned IRNG1                  :1;
        unsigned ITRIM0                 :1;
        unsigned ITRIM1                 :1;
        unsigned ITRIM2                 :1;
        unsigned ITRIM3                 :1;
        unsigned ITRIM4                 :1;
        unsigned ITRIM5                 :1;
    };
} CTMUICONbits_t;
extern volatile CTMUICONbits_t CTMUICONbits @ 0xF43;
// bitfield macros
#define _CTMUICON_IRNG_POSN                                 0x0
#define _CTMUICON_IRNG_POSITION                             0x0
#define _CTMUICON_IRNG_SIZE                                 0x2
#define _CTMUICON_IRNG_LENGTH                               0x2
#define _CTMUICON_IRNG_MASK                                 0x3
#define _CTMUICON_ITRIM_POSN                                0x2
#define _CTMUICON_ITRIM_POSITION                            0x2
#define _CTMUICON_ITRIM_SIZE                                0x6
#define _CTMUICON_ITRIM_LENGTH                              0x6
#define _CTMUICON_ITRIM_MASK                                0xFC
#define _CTMUICON_IRNG0_POSN                                0x0
#define _CTMUICON_IRNG0_POSITION                            0x0
#define _CTMUICON_IRNG0_SIZE                                0x1
#define _CTMUICON_IRNG0_LENGTH                              0x1
#define _CTMUICON_IRNG0_MASK                                0x1
#define _CTMUICON_IRNG1_POSN                                0x1
#define _CTMUICON_IRNG1_POSITION                            0x1
#define _CTMUICON_IRNG1_SIZE                                0x1
#define _CTMUICON_IRNG1_LENGTH                              0x1
#define _CTMUICON_IRNG1_MASK                                0x2
#define _CTMUICON_ITRIM0_POSN                               0x2
#define _CTMUICON_ITRIM0_POSITION                           0x2
#define _CTMUICON_ITRIM0_SIZE                               0x1
#define _CTMUICON_ITRIM0_LENGTH                             0x1
#define _CTMUICON_ITRIM0_MASK                               0x4
#define _CTMUICON_ITRIM1_POSN                               0x3
#define _CTMUICON_ITRIM1_POSITION                           0x3
#define _CTMUICON_ITRIM1_SIZE                               0x1
#define _CTMUICON_ITRIM1_LENGTH                             0x1
#define _CTMUICON_ITRIM1_MASK                               0x8
#define _CTMUICON_ITRIM2_POSN                               0x4
#define _CTMUICON_ITRIM2_POSITION                           0x4
#define _CTMUICON_ITRIM2_SIZE                               0x1
#define _CTMUICON_ITRIM2_LENGTH                             0x1
#define _CTMUICON_ITRIM2_MASK                               0x10
#define _CTMUICON_ITRIM3_POSN                               0x5
#define _CTMUICON_ITRIM3_POSITION                           0x5
#define _CTMUICON_ITRIM3_SIZE                               0x1
#define _CTMUICON_ITRIM3_LENGTH                             0x1
#define _CTMUICON_ITRIM3_MASK                               0x20
#define _CTMUICON_ITRIM4_POSN                               0x6
#define _CTMUICON_ITRIM4_POSITION                           0x6
#define _CTMUICON_ITRIM4_SIZE                               0x1
#define _CTMUICON_ITRIM4_LENGTH                             0x1
#define _CTMUICON_ITRIM4_MASK                               0x40
#define _CTMUICON_ITRIM5_POSN                               0x7
#define _CTMUICON_ITRIM5_POSITION                           0x7
#define _CTMUICON_ITRIM5_SIZE                               0x1
#define _CTMUICON_ITRIM5_LENGTH                             0x1
#define _CTMUICON_ITRIM5_MASK                               0x80
// alias bitfield definitions
typedef union {
    struct {
        unsigned IRNG                   :2;
        unsigned ITRIM                  :6;
    };
    struct {
        unsigned IRNG0                  :1;
        unsigned IRNG1                  :1;
        unsigned ITRIM0                 :1;
        unsigned ITRIM1                 :1;
        unsigned ITRIM2                 :1;
        unsigned ITRIM3                 :1;
        unsigned ITRIM4                 :1;
        unsigned ITRIM5                 :1;
    };
} CTMUICONHbits_t;
extern volatile CTMUICONHbits_t CTMUICONHbits @ 0xF43;
// bitfield macros
#define _CTMUICONH_IRNG_POSN                                0x0
#define _CTMUICONH_IRNG_POSITION                            0x0
#define _CTMUICONH_IRNG_SIZE                                0x2
#define _CTMUICONH_IRNG_LENGTH                              0x2
#define _CTMUICONH_IRNG_MASK                                0x3
#define _CTMUICONH_ITRIM_POSN                               0x2
#define _CTMUICONH_ITRIM_POSITION                           0x2
#define _CTMUICONH_ITRIM_SIZE                               0x6
#define _CTMUICONH_ITRIM_LENGTH                             0x6
#define _CTMUICONH_ITRIM_MASK                               0xFC
#define _CTMUICONH_IRNG0_POSN                               0x0
#define _CTMUICONH_IRNG0_POSITION                           0x0
#define _CTMUICONH_IRNG0_SIZE                               0x1
#define _CTMUICONH_IRNG0_LENGTH                             0x1
#define _CTMUICONH_IRNG0_MASK                               0x1
#define _CTMUICONH_IRNG1_POSN                               0x1
#define _CTMUICONH_IRNG1_POSITION                           0x1
#define _CTMUICONH_IRNG1_SIZE                               0x1
#define _CTMUICONH_IRNG1_LENGTH                             0x1
#define _CTMUICONH_IRNG1_MASK                               0x2
#define _CTMUICONH_ITRIM0_POSN                              0x2
#define _CTMUICONH_ITRIM0_POSITION                          0x2
#define _CTMUICONH_ITRIM0_SIZE                              0x1
#define _CTMUICONH_ITRIM0_LENGTH                            0x1
#define _CTMUICONH_ITRIM0_MASK                              0x4
#define _CTMUICONH_ITRIM1_POSN                              0x3
#define _CTMUICONH_ITRIM1_POSITION                          0x3
#define _CTMUICONH_ITRIM1_SIZE                              0x1
#define _CTMUICONH_ITRIM1_LENGTH                            0x1
#define _CTMUICONH_ITRIM1_MASK                              0x8
#define _CTMUICONH_ITRIM2_POSN                              0x4
#define _CTMUICONH_ITRIM2_POSITION                          0x4
#define _CTMUICONH_ITRIM2_SIZE                              0x1
#define _CTMUICONH_ITRIM2_LENGTH                            0x1
#define _CTMUICONH_ITRIM2_MASK                              0x10
#define _CTMUICONH_ITRIM3_POSN                              0x5
#define _CTMUICONH_ITRIM3_POSITION                          0x5
#define _CTMUICONH_ITRIM3_SIZE                              0x1
#define _CTMUICONH_ITRIM3_LENGTH                            0x1
#define _CTMUICONH_ITRIM3_MASK                              0x20
#define _CTMUICONH_ITRIM4_POSN                              0x6
#define _CTMUICONH_ITRIM4_POSITION                          0x6
#define _CTMUICONH_ITRIM4_SIZE                              0x1
#define _CTMUICONH_ITRIM4_LENGTH                            0x1
#define _CTMUICONH_ITRIM4_MASK                              0x40
#define _CTMUICONH_ITRIM5_POSN                              0x7
#define _CTMUICONH_ITRIM5_POSITION                          0x7
#define _CTMUICONH_ITRIM5_SIZE                              0x1
#define _CTMUICONH_ITRIM5_LENGTH                            0x1
#define _CTMUICONH_ITRIM5_MASK                              0x80

// Register: CTMUCONL
extern volatile unsigned char           CTMUCONL            @ 0xF44;
#ifndef _LIB_BUILD
asm("CTMUCONL equ 0F44h");
#endif
// aliases
extern volatile unsigned char           CTMUCON1            @ 0xF44;
#ifndef _LIB_BUILD
asm("CTMUCON1 equ 0F44h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned EDG1STAT               :1;
        unsigned EDG2STAT               :1;
        unsigned EDG1SEL                :2;
        unsigned EDG1POL                :1;
        unsigned EDG2SEL                :2;
        unsigned EDG2POL                :1;
    };
    struct {
        unsigned                        :2;
        unsigned EDG1SEL0               :1;
        unsigned EDG1SEL1               :1;
        unsigned                        :1;
        unsigned EDG2SEL0               :1;
        unsigned EDG2SEL1               :1;
    };
} CTMUCONLbits_t;
extern volatile CTMUCONLbits_t CTMUCONLbits @ 0xF44;
// bitfield macros
#define _CTMUCONL_EDG1STAT_POSN                             0x0
#define _CTMUCONL_EDG1STAT_POSITION                         0x0
#define _CTMUCONL_EDG1STAT_SIZE                             0x1
#define _CTMUCONL_EDG1STAT_LENGTH                           0x1
#define _CTMUCONL_EDG1STAT_MASK                             0x1
#define _CTMUCONL_EDG2STAT_POSN                             0x1
#define _CTMUCONL_EDG2STAT_POSITION                         0x1
#define _CTMUCONL_EDG2STAT_SIZE                             0x1
#define _CTMUCONL_EDG2STAT_LENGTH                           0x1
#define _CTMUCONL_EDG2STAT_MASK                             0x2
#define _CTMUCONL_EDG1SEL_POSN                              0x2
#define _CTMUCONL_EDG1SEL_POSITION                          0x2
#define _CTMUCONL_EDG1SEL_SIZE                              0x2
#define _CTMUCONL_EDG1SEL_LENGTH                            0x2
#define _CTMUCONL_EDG1SEL_MASK                              0xC
#define _CTMUCONL_EDG1POL_POSN                              0x4
#define _CTMUCONL_EDG1POL_POSITION                          0x4
#define _CTMUCONL_EDG1POL_SIZE                              0x1
#define _CTMUCONL_EDG1POL_LENGTH                            0x1
#define _CTMUCONL_EDG1POL_MASK                              0x10
#define _CTMUCONL_EDG2SEL_POSN                              0x5
#define _CTMUCONL_EDG2SEL_POSITION                          0x5
#define _CTMUCONL_EDG2SEL_SIZE                              0x2
#define _CTMUCONL_EDG2SEL_LENGTH                            0x2
#define _CTMUCONL_EDG2SEL_MASK                              0x60
#define _CTMUCONL_EDG2POL_POSN                              0x7
#define _CTMUCONL_EDG2POL_POSITION                          0x7
#define _CTMUCONL_EDG2POL_SIZE                              0x1
#define _CTMUCONL_EDG2POL_LENGTH                            0x1
#define _CTMUCONL_EDG2POL_MASK                              0x80
#define _CTMUCONL_EDG1SEL0_POSN                             0x2
#define _CTMUCONL_EDG1SEL0_POSITION                         0x2
#define _CTMUCONL_EDG1SEL0_SIZE                             0x1
#define _CTMUCONL_EDG1SEL0_LENGTH                           0x1
#define _CTMUCONL_EDG1SEL0_MASK                             0x4
#define _CTMUCONL_EDG1SEL1_POSN                             0x3
#define _CTMUCONL_EDG1SEL1_POSITION                         0x3
#define _CTMUCONL_EDG1SEL1_SIZE                             0x1
#define _CTMUCONL_EDG1SEL1_LENGTH                           0x1
#define _CTMUCONL_EDG1SEL1_MASK                             0x8
#define _CTMUCONL_EDG2SEL0_POSN                             0x5
#define _CTMUCONL_EDG2SEL0_POSITION                         0x5
#define _CTMUCONL_EDG2SEL0_SIZE                             0x1
#define _CTMUCONL_EDG2SEL0_LENGTH                           0x1
#define _CTMUCONL_EDG2SEL0_MASK                             0x20
#define _CTMUCONL_EDG2SEL1_POSN                             0x6
#define _CTMUCONL_EDG2SEL1_POSITION                         0x6
#define _CTMUCONL_EDG2SEL1_SIZE                             0x1
#define _CTMUCONL_EDG2SEL1_LENGTH                           0x1
#define _CTMUCONL_EDG2SEL1_MASK                             0x40
// alias bitfield definitions
typedef union {
    struct {
        unsigned EDG1STAT               :1;
        unsigned EDG2STAT               :1;
        unsigned EDG1SEL                :2;
        unsigned EDG1POL                :1;
        unsigned EDG2SEL                :2;
        unsigned EDG2POL                :1;
    };
    struct {
        unsigned                        :2;
        unsigned EDG1SEL0               :1;
        unsigned EDG1SEL1               :1;
        unsigned                        :1;
        unsigned EDG2SEL0               :1;
        unsigned EDG2SEL1               :1;
    };
} CTMUCON1bits_t;
extern volatile CTMUCON1bits_t CTMUCON1bits @ 0xF44;
// bitfield macros
#define _CTMUCON1_EDG1STAT_POSN                             0x0
#define _CTMUCON1_EDG1STAT_POSITION                         0x0
#define _CTMUCON1_EDG1STAT_SIZE                             0x1
#define _CTMUCON1_EDG1STAT_LENGTH                           0x1
#define _CTMUCON1_EDG1STAT_MASK                             0x1
#define _CTMUCON1_EDG2STAT_POSN                             0x1
#define _CTMUCON1_EDG2STAT_POSITION                         0x1
#define _CTMUCON1_EDG2STAT_SIZE                             0x1
#define _CTMUCON1_EDG2STAT_LENGTH                           0x1
#define _CTMUCON1_EDG2STAT_MASK                             0x2
#define _CTMUCON1_EDG1SEL_POSN                              0x2
#define _CTMUCON1_EDG1SEL_POSITION                          0x2
#define _CTMUCON1_EDG1SEL_SIZE                              0x2
#define _CTMUCON1_EDG1SEL_LENGTH                            0x2
#define _CTMUCON1_EDG1SEL_MASK                              0xC
#define _CTMUCON1_EDG1POL_POSN                              0x4
#define _CTMUCON1_EDG1POL_POSITION                          0x4
#define _CTMUCON1_EDG1POL_SIZE                              0x1
#define _CTMUCON1_EDG1POL_LENGTH                            0x1
#define _CTMUCON1_EDG1POL_MASK                              0x10
#define _CTMUCON1_EDG2SEL_POSN                              0x5
#define _CTMUCON1_EDG2SEL_POSITION                          0x5
#define _CTMUCON1_EDG2SEL_SIZE                              0x2
#define _CTMUCON1_EDG2SEL_LENGTH                            0x2
#define _CTMUCON1_EDG2SEL_MASK                              0x60
#define _CTMUCON1_EDG2POL_POSN                              0x7
#define _CTMUCON1_EDG2POL_POSITION                          0x7
#define _CTMUCON1_EDG2POL_SIZE                              0x1
#define _CTMUCON1_EDG2POL_LENGTH                            0x1
#define _CTMUCON1_EDG2POL_MASK                              0x80
#define _CTMUCON1_EDG1SEL0_POSN                             0x2
#define _CTMUCON1_EDG1SEL0_POSITION                         0x2
#define _CTMUCON1_EDG1SEL0_SIZE                             0x1
#define _CTMUCON1_EDG1SEL0_LENGTH                           0x1
#define _CTMUCON1_EDG1SEL0_MASK                             0x4
#define _CTMUCON1_EDG1SEL1_POSN                             0x3
#define _CTMUCON1_EDG1SEL1_POSITION                         0x3
#define _CTMUCON1_EDG1SEL1_SIZE                             0x1
#define _CTMUCON1_EDG1SEL1_LENGTH                           0x1
#define _CTMUCON1_EDG1SEL1_MASK                             0x8
#define _CTMUCON1_EDG2SEL0_POSN                             0x5
#define _CTMUCON1_EDG2SEL0_POSITION                         0x5
#define _CTMUCON1_EDG2SEL0_SIZE                             0x1
#define _CTMUCON1_EDG2SEL0_LENGTH                           0x1
#define _CTMUCON1_EDG2SEL0_MASK                             0x20
#define _CTMUCON1_EDG2SEL1_POSN                             0x6
#define _CTMUCON1_EDG2SEL1_POSITION                         0x6
#define _CTMUCON1_EDG2SEL1_SIZE                             0x1
#define _CTMUCON1_EDG2SEL1_LENGTH                           0x1
#define _CTMUCON1_EDG2SEL1_MASK                             0x40

// Register: CTMUCONH
extern volatile unsigned char           CTMUCONH            @ 0xF45;
#ifndef _LIB_BUILD
asm("CTMUCONH equ 0F45h");
#endif
// aliases
extern volatile unsigned char           CTMUCON0            @ 0xF45;
#ifndef _LIB_BUILD
asm("CTMUCON0 equ 0F45h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned CTTRIG                 :1;
        unsigned IDISSEN                :1;
        unsigned EDGSEQEN               :1;
        unsigned EDGEN                  :1;
        unsigned TGEN                   :1;
        unsigned CTMUSIDL               :1;
        unsigned                        :1;
        unsigned CTMUEN                 :1;
    };
} CTMUCONHbits_t;
extern volatile CTMUCONHbits_t CTMUCONHbits @ 0xF45;
// bitfield macros
#define _CTMUCONH_CTTRIG_POSN                               0x0
#define _CTMUCONH_CTTRIG_POSITION                           0x0
#define _CTMUCONH_CTTRIG_SIZE                               0x1
#define _CTMUCONH_CTTRIG_LENGTH                             0x1
#define _CTMUCONH_CTTRIG_MASK                               0x1
#define _CTMUCONH_IDISSEN_POSN                              0x1
#define _CTMUCONH_IDISSEN_POSITION                          0x1
#define _CTMUCONH_IDISSEN_SIZE                              0x1
#define _CTMUCONH_IDISSEN_LENGTH                            0x1
#define _CTMUCONH_IDISSEN_MASK                              0x2
#define _CTMUCONH_EDGSEQEN_POSN                             0x2
#define _CTMUCONH_EDGSEQEN_POSITION                         0x2
#define _CTMUCONH_EDGSEQEN_SIZE                             0x1
#define _CTMUCONH_EDGSEQEN_LENGTH                           0x1
#define _CTMUCONH_EDGSEQEN_MASK                             0x4
#define _CTMUCONH_EDGEN_POSN                                0x3
#define _CTMUCONH_EDGEN_POSITION                            0x3
#define _CTMUCONH_EDGEN_SIZE                                0x1
#define _CTMUCONH_EDGEN_LENGTH                              0x1
#define _CTMUCONH_EDGEN_MASK                                0x8
#define _CTMUCONH_TGEN_POSN                                 0x4
#define _CTMUCONH_TGEN_POSITION                             0x4
#define _CTMUCONH_TGEN_SIZE                                 0x1
#define _CTMUCONH_TGEN_LENGTH                               0x1
#define _CTMUCONH_TGEN_MASK                                 0x10
#define _CTMUCONH_CTMUSIDL_POSN                             0x5
#define _CTMUCONH_CTMUSIDL_POSITION                         0x5
#define _CTMUCONH_CTMUSIDL_SIZE                             0x1
#define _CTMUCONH_CTMUSIDL_LENGTH                           0x1
#define _CTMUCONH_CTMUSIDL_MASK                             0x20
#define _CTMUCONH_CTMUEN_POSN                               0x7
#define _CTMUCONH_CTMUEN_POSITION                           0x7
#define _CTMUCONH_CTMUEN_SIZE                               0x1
#define _CTMUCONH_CTMUEN_LENGTH                             0x1
#define _CTMUCONH_CTMUEN_MASK                               0x80
// alias bitfield definitions
typedef union {
    struct {
        unsigned CTTRIG                 :1;
        unsigned IDISSEN                :1;
        unsigned EDGSEQEN               :1;
        unsigned EDGEN                  :1;
        unsigned TGEN                   :1;
        unsigned CTMUSIDL               :1;
        unsigned                        :1;
        unsigned CTMUEN                 :1;
    };
} CTMUCON0bits_t;
extern volatile CTMUCON0bits_t CTMUCON0bits @ 0xF45;
// bitfield macros
#define _CTMUCON0_CTTRIG_POSN                               0x0
#define _CTMUCON0_CTTRIG_POSITION                           0x0
#define _CTMUCON0_CTTRIG_SIZE                               0x1
#define _CTMUCON0_CTTRIG_LENGTH                             0x1
#define _CTMUCON0_CTTRIG_MASK                               0x1
#define _CTMUCON0_IDISSEN_POSN                              0x1
#define _CTMUCON0_IDISSEN_POSITION                          0x1
#define _CTMUCON0_IDISSEN_SIZE                              0x1
#define _CTMUCON0_IDISSEN_LENGTH                            0x1
#define _CTMUCON0_IDISSEN_MASK                              0x2
#define _CTMUCON0_EDGSEQEN_POSN                             0x2
#define _CTMUCON0_EDGSEQEN_POSITION                         0x2
#define _CTMUCON0_EDGSEQEN_SIZE                             0x1
#define _CTMUCON0_EDGSEQEN_LENGTH                           0x1
#define _CTMUCON0_EDGSEQEN_MASK                             0x4
#define _CTMUCON0_EDGEN_POSN                                0x3
#define _CTMUCON0_EDGEN_POSITION                            0x3
#define _CTMUCON0_EDGEN_SIZE                                0x1
#define _CTMUCON0_EDGEN_LENGTH                              0x1
#define _CTMUCON0_EDGEN_MASK                                0x8
#define _CTMUCON0_TGEN_POSN                                 0x4
#define _CTMUCON0_TGEN_POSITION                             0x4
#define _CTMUCON0_TGEN_SIZE                                 0x1
#define _CTMUCON0_TGEN_LENGTH                               0x1
#define _CTMUCON0_TGEN_MASK                                 0x10
#define _CTMUCON0_CTMUSIDL_POSN                             0x5
#define _CTMUCON0_CTMUSIDL_POSITION                         0x5
#define _CTMUCON0_CTMUSIDL_SIZE                             0x1
#define _CTMUCON0_CTMUSIDL_LENGTH                           0x1
#define _CTMUCON0_CTMUSIDL_MASK                             0x20
#define _CTMUCON0_CTMUEN_POSN                               0x7
#define _CTMUCON0_CTMUEN_POSITION                           0x7
#define _CTMUCON0_CTMUEN_SIZE                               0x1
#define _CTMUCON0_CTMUEN_LENGTH                             0x1
#define _CTMUCON0_CTMUEN_MASK                               0x80

// Register: SRCON1
extern volatile unsigned char           SRCON1              @ 0xF46;
#ifndef _LIB_BUILD
asm("SRCON1 equ 0F46h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned SRRC1E                 :1;
        unsigned SRRC2E                 :1;
        unsigned SRRCKE                 :1;
        unsigned SRRPE                  :1;
        unsigned SRSC1E                 :1;
        unsigned SRSC2E                 :1;
        unsigned SRSCKE                 :1;
        unsigned SRSPE                  :1;
    };
} SRCON1bits_t;
extern volatile SRCON1bits_t SRCON1bits @ 0xF46;
// bitfield macros
#define _SRCON1_SRRC1E_POSN                                 0x0
#define _SRCON1_SRRC1E_POSITION                             0x0
#define _SRCON1_SRRC1E_SIZE                                 0x1
#define _SRCON1_SRRC1E_LENGTH                               0x1
#define _SRCON1_SRRC1E_MASK                                 0x1
#define _SRCON1_SRRC2E_POSN                                 0x1
#define _SRCON1_SRRC2E_POSITION                             0x1
#define _SRCON1_SRRC2E_SIZE                                 0x1
#define _SRCON1_SRRC2E_LENGTH                               0x1
#define _SRCON1_SRRC2E_MASK                                 0x2
#define _SRCON1_SRRCKE_POSN                                 0x2
#define _SRCON1_SRRCKE_POSITION                             0x2
#define _SRCON1_SRRCKE_SIZE                                 0x1
#define _SRCON1_SRRCKE_LENGTH                               0x1
#define _SRCON1_SRRCKE_MASK                                 0x4
#define _SRCON1_SRRPE_POSN                                  0x3
#define _SRCON1_SRRPE_POSITION                              0x3
#define _SRCON1_SRRPE_SIZE                                  0x1
#define _SRCON1_SRRPE_LENGTH                                0x1
#define _SRCON1_SRRPE_MASK                                  0x8
#define _SRCON1_SRSC1E_POSN                                 0x4
#define _SRCON1_SRSC1E_POSITION                             0x4
#define _SRCON1_SRSC1E_SIZE                                 0x1
#define _SRCON1_SRSC1E_LENGTH                               0x1
#define _SRCON1_SRSC1E_MASK                                 0x10
#define _SRCON1_SRSC2E_POSN                                 0x5
#define _SRCON1_SRSC2E_POSITION                             0x5
#define _SRCON1_SRSC2E_SIZE                                 0x1
#define _SRCON1_SRSC2E_LENGTH                               0x1
#define _SRCON1_SRSC2E_MASK                                 0x20
#define _SRCON1_SRSCKE_POSN                                 0x6
#define _SRCON1_SRSCKE_POSITION                             0x6
#define _SRCON1_SRSCKE_SIZE                                 0x1
#define _SRCON1_SRSCKE_LENGTH                               0x1
#define _SRCON1_SRSCKE_MASK                                 0x40
#define _SRCON1_SRSPE_POSN                                  0x7
#define _SRCON1_SRSPE_POSITION                              0x7
#define _SRCON1_SRSPE_SIZE                                  0x1
#define _SRCON1_SRSPE_LENGTH                                0x1
#define _SRCON1_SRSPE_MASK                                  0x80

// Register: SRCON0
extern volatile unsigned char           SRCON0              @ 0xF47;
#ifndef _LIB_BUILD
asm("SRCON0 equ 0F47h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned SRPR                   :1;
        unsigned SRPS                   :1;
        unsigned SRNQEN                 :1;
        unsigned SRQEN                  :1;
        unsigned SRCLK                  :3;
        unsigned SRLEN                  :1;
    };
    struct {
        unsigned                        :4;
        unsigned SRCLK0                 :1;
        unsigned SRCLK1                 :1;
        unsigned SRCLK2                 :1;
    };
} SRCON0bits_t;
extern volatile SRCON0bits_t SRCON0bits @ 0xF47;
// bitfield macros
#define _SRCON0_SRPR_POSN                                   0x0
#define _SRCON0_SRPR_POSITION                               0x0
#define _SRCON0_SRPR_SIZE                                   0x1
#define _SRCON0_SRPR_LENGTH                                 0x1
#define _SRCON0_SRPR_MASK                                   0x1
#define _SRCON0_SRPS_POSN                                   0x1
#define _SRCON0_SRPS_POSITION                               0x1
#define _SRCON0_SRPS_SIZE                                   0x1
#define _SRCON0_SRPS_LENGTH                                 0x1
#define _SRCON0_SRPS_MASK                                   0x2
#define _SRCON0_SRNQEN_POSN                                 0x2
#define _SRCON0_SRNQEN_POSITION                             0x2
#define _SRCON0_SRNQEN_SIZE                                 0x1
#define _SRCON0_SRNQEN_LENGTH                               0x1
#define _SRCON0_SRNQEN_MASK                                 0x4
#define _SRCON0_SRQEN_POSN                                  0x3
#define _SRCON0_SRQEN_POSITION                              0x3
#define _SRCON0_SRQEN_SIZE                                  0x1
#define _SRCON0_SRQEN_LENGTH                                0x1
#define _SRCON0_SRQEN_MASK                                  0x8
#define _SRCON0_SRCLK_POSN                                  0x4
#define _SRCON0_SRCLK_POSITION                              0x4
#define _SRCON0_SRCLK_SIZE                                  0x3
#define _SRCON0_SRCLK_LENGTH                                0x3
#define _SRCON0_SRCLK_MASK                                  0x70
#define _SRCON0_SRLEN_POSN                                  0x7
#define _SRCON0_SRLEN_POSITION                              0x7
#define _SRCON0_SRLEN_SIZE                                  0x1
#define _SRCON0_SRLEN_LENGTH                                0x1
#define _SRCON0_SRLEN_MASK                                  0x80
#define _SRCON0_SRCLK0_POSN                                 0x4
#define _SRCON0_SRCLK0_POSITION                             0x4
#define _SRCON0_SRCLK0_SIZE                                 0x1
#define _SRCON0_SRCLK0_LENGTH                               0x1
#define _SRCON0_SRCLK0_MASK                                 0x10
#define _SRCON0_SRCLK1_POSN                                 0x5
#define _SRCON0_SRCLK1_POSITION                             0x5
#define _SRCON0_SRCLK1_SIZE                                 0x1
#define _SRCON0_SRCLK1_LENGTH                               0x1
#define _SRCON0_SRCLK1_MASK                                 0x20
#define _SRCON0_SRCLK2_POSN                                 0x6
#define _SRCON0_SRCLK2_POSITION                             0x6
#define _SRCON0_SRCLK2_SIZE                                 0x1
#define _SRCON0_SRCLK2_LENGTH                               0x1
#define _SRCON0_SRCLK2_MASK                                 0x40

// Register: CCPTMRS1
extern volatile unsigned char           CCPTMRS1            @ 0xF48;
#ifndef _LIB_BUILD
asm("CCPTMRS1 equ 0F48h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned C4TSEL                 :2;
        unsigned C5TSEL                 :2;
    };
    struct {
        unsigned C4TSEL0                :1;
        unsigned C4TSEL1                :1;
        unsigned C5TSEL0                :1;
        unsigned C5TSEL1                :1;
    };
} CCPTMRS1bits_t;
extern volatile CCPTMRS1bits_t CCPTMRS1bits @ 0xF48;
// bitfield macros
#define _CCPTMRS1_C4TSEL_POSN                               0x0
#define _CCPTMRS1_C4TSEL_POSITION                           0x0
#define _CCPTMRS1_C4TSEL_SIZE                               0x2
#define _CCPTMRS1_C4TSEL_LENGTH                             0x2
#define _CCPTMRS1_C4TSEL_MASK                               0x3
#define _CCPTMRS1_C5TSEL_POSN                               0x2
#define _CCPTMRS1_C5TSEL_POSITION                           0x2
#define _CCPTMRS1_C5TSEL_SIZE                               0x2
#define _CCPTMRS1_C5TSEL_LENGTH                             0x2
#define _CCPTMRS1_C5TSEL_MASK                               0xC
#define _CCPTMRS1_C4TSEL0_POSN                              0x0
#define _CCPTMRS1_C4TSEL0_POSITION                          0x0
#define _CCPTMRS1_C4TSEL0_SIZE                              0x1
#define _CCPTMRS1_C4TSEL0_LENGTH                            0x1
#define _CCPTMRS1_C4TSEL0_MASK                              0x1
#define _CCPTMRS1_C4TSEL1_POSN                              0x1
#define _CCPTMRS1_C4TSEL1_POSITION                          0x1
#define _CCPTMRS1_C4TSEL1_SIZE                              0x1
#define _CCPTMRS1_C4TSEL1_LENGTH                            0x1
#define _CCPTMRS1_C4TSEL1_MASK                              0x2
#define _CCPTMRS1_C5TSEL0_POSN                              0x2
#define _CCPTMRS1_C5TSEL0_POSITION                          0x2
#define _CCPTMRS1_C5TSEL0_SIZE                              0x1
#define _CCPTMRS1_C5TSEL0_LENGTH                            0x1
#define _CCPTMRS1_C5TSEL0_MASK                              0x4
#define _CCPTMRS1_C5TSEL1_POSN                              0x3
#define _CCPTMRS1_C5TSEL1_POSITION                          0x3
#define _CCPTMRS1_C5TSEL1_SIZE                              0x1
#define _CCPTMRS1_C5TSEL1_LENGTH                            0x1
#define _CCPTMRS1_C5TSEL1_MASK                              0x8

// Register: CCPTMRS0
extern volatile unsigned char           CCPTMRS0            @ 0xF49;
#ifndef _LIB_BUILD
asm("CCPTMRS0 equ 0F49h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned C1TSEL                 :2;
        unsigned                        :1;
        unsigned C2TSEL                 :2;
        unsigned                        :1;
        unsigned C3TSEL                 :2;
    };
    struct {
        unsigned C1TSEL0                :1;
        unsigned C1TSEL1                :1;
        unsigned                        :1;
        unsigned C2TSEL0                :1;
        unsigned C2TSEL1                :1;
        unsigned                        :1;
        unsigned C3TSEL0                :1;
        unsigned C3TSEL1                :1;
    };
} CCPTMRS0bits_t;
extern volatile CCPTMRS0bits_t CCPTMRS0bits @ 0xF49;
// bitfield macros
#define _CCPTMRS0_C1TSEL_POSN                               0x0
#define _CCPTMRS0_C1TSEL_POSITION                           0x0
#define _CCPTMRS0_C1TSEL_SIZE                               0x2
#define _CCPTMRS0_C1TSEL_LENGTH                             0x2
#define _CCPTMRS0_C1TSEL_MASK                               0x3
#define _CCPTMRS0_C2TSEL_POSN                               0x3
#define _CCPTMRS0_C2TSEL_POSITION                           0x3
#define _CCPTMRS0_C2TSEL_SIZE                               0x2
#define _CCPTMRS0_C2TSEL_LENGTH                             0x2
#define _CCPTMRS0_C2TSEL_MASK                               0x18
#define _CCPTMRS0_C3TSEL_POSN                               0x6
#define _CCPTMRS0_C3TSEL_POSITION                           0x6
#define _CCPTMRS0_C3TSEL_SIZE                               0x2
#define _CCPTMRS0_C3TSEL_LENGTH                             0x2
#define _CCPTMRS0_C3TSEL_MASK                               0xC0
#define _CCPTMRS0_C1TSEL0_POSN                              0x0
#define _CCPTMRS0_C1TSEL0_POSITION                          0x0
#define _CCPTMRS0_C1TSEL0_SIZE                              0x1
#define _CCPTMRS0_C1TSEL0_LENGTH                            0x1
#define _CCPTMRS0_C1TSEL0_MASK                              0x1
#define _CCPTMRS0_C1TSEL1_POSN                              0x1
#define _CCPTMRS0_C1TSEL1_POSITION                          0x1
#define _CCPTMRS0_C1TSEL1_SIZE                              0x1
#define _CCPTMRS0_C1TSEL1_LENGTH                            0x1
#define _CCPTMRS0_C1TSEL1_MASK                              0x2
#define _CCPTMRS0_C2TSEL0_POSN                              0x3
#define _CCPTMRS0_C2TSEL0_POSITION                          0x3
#define _CCPTMRS0_C2TSEL0_SIZE                              0x1
#define _CCPTMRS0_C2TSEL0_LENGTH                            0x1
#define _CCPTMRS0_C2TSEL0_MASK                              0x8
#define _CCPTMRS0_C2TSEL1_POSN                              0x4
#define _CCPTMRS0_C2TSEL1_POSITION                          0x4
#define _CCPTMRS0_C2TSEL1_SIZE                              0x1
#define _CCPTMRS0_C2TSEL1_LENGTH                            0x1
#define _CCPTMRS0_C2TSEL1_MASK                              0x10
#define _CCPTMRS0_C3TSEL0_POSN                              0x6
#define _CCPTMRS0_C3TSEL0_POSITION                          0x6
#define _CCPTMRS0_C3TSEL0_SIZE                              0x1
#define _CCPTMRS0_C3TSEL0_LENGTH                            0x1
#define _CCPTMRS0_C3TSEL0_MASK                              0x40
#define _CCPTMRS0_C3TSEL1_POSN                              0x7
#define _CCPTMRS0_C3TSEL1_POSITION                          0x7
#define _CCPTMRS0_C3TSEL1_SIZE                              0x1
#define _CCPTMRS0_C3TSEL1_LENGTH                            0x1
#define _CCPTMRS0_C3TSEL1_MASK                              0x80

// Register: T6CON
extern volatile unsigned char           T6CON               @ 0xF4A;
#ifndef _LIB_BUILD
asm("T6CON equ 0F4Ah");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned T6CKPS                 :2;
        unsigned TMR6ON                 :1;
        unsigned T6OUTPS                :4;
    };
    struct {
        unsigned T6CKPS0                :1;
        unsigned T6CKPS1                :1;
        unsigned                        :1;
        unsigned T6OUTPS0               :1;
        unsigned T6OUTPS1               :1;
        unsigned T6OUTPS2               :1;
        unsigned T6OUTPS3               :1;
    };
} T6CONbits_t;
extern volatile T6CONbits_t T6CONbits @ 0xF4A;
// bitfield macros
#define _T6CON_T6CKPS_POSN                                  0x0
#define _T6CON_T6CKPS_POSITION                              0x0
#define _T6CON_T6CKPS_SIZE                                  0x2
#define _T6CON_T6CKPS_LENGTH                                0x2
#define _T6CON_T6CKPS_MASK                                  0x3
#define _T6CON_TMR6ON_POSN                                  0x2
#define _T6CON_TMR6ON_POSITION                              0x2
#define _T6CON_TMR6ON_SIZE                                  0x1
#define _T6CON_TMR6ON_LENGTH                                0x1
#define _T6CON_TMR6ON_MASK                                  0x4
#define _T6CON_T6OUTPS_POSN                                 0x3
#define _T6CON_T6OUTPS_POSITION                             0x3
#define _T6CON_T6OUTPS_SIZE                                 0x4
#define _T6CON_T6OUTPS_LENGTH                               0x4
#define _T6CON_T6OUTPS_MASK                                 0x78
#define _T6CON_T6CKPS0_POSN                                 0x0
#define _T6CON_T6CKPS0_POSITION                             0x0
#define _T6CON_T6CKPS0_SIZE                                 0x1
#define _T6CON_T6CKPS0_LENGTH                               0x1
#define _T6CON_T6CKPS0_MASK                                 0x1
#define _T6CON_T6CKPS1_POSN                                 0x1
#define _T6CON_T6CKPS1_POSITION                             0x1
#define _T6CON_T6CKPS1_SIZE                                 0x1
#define _T6CON_T6CKPS1_LENGTH                               0x1
#define _T6CON_T6CKPS1_MASK                                 0x2
#define _T6CON_T6OUTPS0_POSN                                0x3
#define _T6CON_T6OUTPS0_POSITION                            0x3
#define _T6CON_T6OUTPS0_SIZE                                0x1
#define _T6CON_T6OUTPS0_LENGTH                              0x1
#define _T6CON_T6OUTPS0_MASK                                0x8
#define _T6CON_T6OUTPS1_POSN                                0x4
#define _T6CON_T6OUTPS1_POSITION                            0x4
#define _T6CON_T6OUTPS1_SIZE                                0x1
#define _T6CON_T6OUTPS1_LENGTH                              0x1
#define _T6CON_T6OUTPS1_MASK                                0x10
#define _T6CON_T6OUTPS2_POSN                                0x5
#define _T6CON_T6OUTPS2_POSITION                            0x5
#define _T6CON_T6OUTPS2_SIZE                                0x1
#define _T6CON_T6OUTPS2_LENGTH                              0x1
#define _T6CON_T6OUTPS2_MASK                                0x20
#define _T6CON_T6OUTPS3_POSN                                0x6
#define _T6CON_T6OUTPS3_POSITION                            0x6
#define _T6CON_T6OUTPS3_SIZE                                0x1
#define _T6CON_T6OUTPS3_LENGTH                              0x1
#define _T6CON_T6OUTPS3_MASK                                0x40

// Register: PR6
extern volatile unsigned char           PR6                 @ 0xF4B;
#ifndef _LIB_BUILD
asm("PR6 equ 0F4Bh");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned PR6                    :8;
    };
} PR6bits_t;
extern volatile PR6bits_t PR6bits @ 0xF4B;
// bitfield macros
#define _PR6_PR6_POSN                                       0x0
#define _PR6_PR6_POSITION                                   0x0
#define _PR6_PR6_SIZE                                       0x8
#define _PR6_PR6_LENGTH                                     0x8
#define _PR6_PR6_MASK                                       0xFF

// Register: TMR6
extern volatile unsigned char           TMR6                @ 0xF4C;
#ifndef _LIB_BUILD
asm("TMR6 equ 0F4Ch");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned TMR6                   :8;
    };
} TMR6bits_t;
extern volatile TMR6bits_t TMR6bits @ 0xF4C;
// bitfield macros
#define _TMR6_TMR6_POSN                                     0x0
#define _TMR6_TMR6_POSITION                                 0x0
#define _TMR6_TMR6_SIZE                                     0x8
#define _TMR6_TMR6_LENGTH                                   0x8
#define _TMR6_TMR6_MASK                                     0xFF

// Register: T5GCON
extern volatile unsigned char           T5GCON              @ 0xF4D;
#ifndef _LIB_BUILD
asm("T5GCON equ 0F4Dh");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned                        :3;
        unsigned T5GGO_NOT_DONE         :1;
    };
    struct {
        unsigned T5GSS                  :2;
        unsigned T5GVAL                 :1;
        unsigned T5GGO_nDONE            :1;
        unsigned T5GSPM                 :1;
        unsigned T5GTM                  :1;
        unsigned T5GPOL                 :1;
        unsigned TMR5GE                 :1;
    };
    struct {
        unsigned T5GSS0                 :1;
        unsigned T5GSS1                 :1;
        unsigned                        :1;
        unsigned T5GGO                  :1;
    };
    struct {
        unsigned                        :3;
        unsigned T5G_DONE               :1;
    };
} T5GCONbits_t;
extern volatile T5GCONbits_t T5GCONbits @ 0xF4D;
// bitfield macros
#define _T5GCON_T5GGO_NOT_DONE_POSN                         0x3
#define _T5GCON_T5GGO_NOT_DONE_POSITION                     0x3
#define _T5GCON_T5GGO_NOT_DONE_SIZE                         0x1
#define _T5GCON_T5GGO_NOT_DONE_LENGTH                       0x1
#define _T5GCON_T5GGO_NOT_DONE_MASK                         0x8
#define _T5GCON_T5GSS_POSN                                  0x0
#define _T5GCON_T5GSS_POSITION                              0x0
#define _T5GCON_T5GSS_SIZE                                  0x2
#define _T5GCON_T5GSS_LENGTH                                0x2
#define _T5GCON_T5GSS_MASK                                  0x3
#define _T5GCON_T5GVAL_POSN                                 0x2
#define _T5GCON_T5GVAL_POSITION                             0x2
#define _T5GCON_T5GVAL_SIZE                                 0x1
#define _T5GCON_T5GVAL_LENGTH                               0x1
#define _T5GCON_T5GVAL_MASK                                 0x4
#define _T5GCON_T5GGO_nDONE_POSN                            0x3
#define _T5GCON_T5GGO_nDONE_POSITION                        0x3
#define _T5GCON_T5GGO_nDONE_SIZE                            0x1
#define _T5GCON_T5GGO_nDONE_LENGTH                          0x1
#define _T5GCON_T5GGO_nDONE_MASK                            0x8
#define _T5GCON_T5GSPM_POSN                                 0x4
#define _T5GCON_T5GSPM_POSITION                             0x4
#define _T5GCON_T5GSPM_SIZE                                 0x1
#define _T5GCON_T5GSPM_LENGTH                               0x1
#define _T5GCON_T5GSPM_MASK                                 0x10
#define _T5GCON_T5GTM_POSN                                  0x5
#define _T5GCON_T5GTM_POSITION                              0x5
#define _T5GCON_T5GTM_SIZE                                  0x1
#define _T5GCON_T5GTM_LENGTH                                0x1
#define _T5GCON_T5GTM_MASK                                  0x20
#define _T5GCON_T5GPOL_POSN                                 0x6
#define _T5GCON_T5GPOL_POSITION                             0x6
#define _T5GCON_T5GPOL_SIZE                                 0x1
#define _T5GCON_T5GPOL_LENGTH                               0x1
#define _T5GCON_T5GPOL_MASK                                 0x40
#define _T5GCON_TMR5GE_POSN                                 0x7
#define _T5GCON_TMR5GE_POSITION                             0x7
#define _T5GCON_TMR5GE_SIZE                                 0x1
#define _T5GCON_TMR5GE_LENGTH                               0x1
#define _T5GCON_TMR5GE_MASK                                 0x80
#define _T5GCON_T5GSS0_POSN                                 0x0
#define _T5GCON_T5GSS0_POSITION                             0x0
#define _T5GCON_T5GSS0_SIZE                                 0x1
#define _T5GCON_T5GSS0_LENGTH                               0x1
#define _T5GCON_T5GSS0_MASK                                 0x1
#define _T5GCON_T5GSS1_POSN                                 0x1
#define _T5GCON_T5GSS1_POSITION                             0x1
#define _T5GCON_T5GSS1_SIZE                                 0x1
#define _T5GCON_T5GSS1_LENGTH                               0x1
#define _T5GCON_T5GSS1_MASK                                 0x2
#define _T5GCON_T5GGO_POSN                                  0x3
#define _T5GCON_T5GGO_POSITION                              0x3
#define _T5GCON_T5GGO_SIZE                                  0x1
#define _T5GCON_T5GGO_LENGTH                                0x1
#define _T5GCON_T5GGO_MASK                                  0x8
#define _T5GCON_T5G_DONE_POSN                               0x3
#define _T5GCON_T5G_DONE_POSITION                           0x3
#define _T5GCON_T5G_DONE_SIZE                               0x1
#define _T5GCON_T5G_DONE_LENGTH                             0x1
#define _T5GCON_T5G_DONE_MASK                               0x8

// Register: T5CON
extern volatile unsigned char           T5CON               @ 0xF4E;
#ifndef _LIB_BUILD
asm("T5CON equ 0F4Eh");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned                        :2;
        unsigned NOT_T5SYNC             :1;
    };
    struct {
        unsigned TMR5ON                 :1;
        unsigned T5RD16                 :1;
        unsigned nT5SYNC                :1;
        unsigned T5SOSCEN               :1;
        unsigned T5CKPS                 :2;
        unsigned TMR5CS                 :2;
    };
    struct {
        unsigned                        :2;
        unsigned T5SYNC                 :1;
        unsigned                        :1;
        unsigned T5CKPS0                :1;
        unsigned T5CKPS1                :1;
        unsigned TMR5CS0                :1;
        unsigned TMR5CS1                :1;
    };
    struct {
        unsigned                        :1;
        unsigned RD165                  :1;
        unsigned                        :1;
        unsigned SOSCEN5                :1;
    };
} T5CONbits_t;
extern volatile T5CONbits_t T5CONbits @ 0xF4E;
// bitfield macros
#define _T5CON_NOT_T5SYNC_POSN                              0x2
#define _T5CON_NOT_T5SYNC_POSITION                          0x2
#define _T5CON_NOT_T5SYNC_SIZE                              0x1
#define _T5CON_NOT_T5SYNC_LENGTH                            0x1
#define _T5CON_NOT_T5SYNC_MASK                              0x4
#define _T5CON_TMR5ON_POSN                                  0x0
#define _T5CON_TMR5ON_POSITION                              0x0
#define _T5CON_TMR5ON_SIZE                                  0x1
#define _T5CON_TMR5ON_LENGTH                                0x1
#define _T5CON_TMR5ON_MASK                                  0x1
#define _T5CON_T5RD16_POSN                                  0x1
#define _T5CON_T5RD16_POSITION                              0x1
#define _T5CON_T5RD16_SIZE                                  0x1
#define _T5CON_T5RD16_LENGTH                                0x1
#define _T5CON_T5RD16_MASK                                  0x2
#define _T5CON_nT5SYNC_POSN                                 0x2
#define _T5CON_nT5SYNC_POSITION                             0x2
#define _T5CON_nT5SYNC_SIZE                                 0x1
#define _T5CON_nT5SYNC_LENGTH                               0x1
#define _T5CON_nT5SYNC_MASK                                 0x4
#define _T5CON_T5SOSCEN_POSN                                0x3
#define _T5CON_T5SOSCEN_POSITION                            0x3
#define _T5CON_T5SOSCEN_SIZE                                0x1
#define _T5CON_T5SOSCEN_LENGTH                              0x1
#define _T5CON_T5SOSCEN_MASK                                0x8
#define _T5CON_T5CKPS_POSN                                  0x4
#define _T5CON_T5CKPS_POSITION                              0x4
#define _T5CON_T5CKPS_SIZE                                  0x2
#define _T5CON_T5CKPS_LENGTH                                0x2
#define _T5CON_T5CKPS_MASK                                  0x30
#define _T5CON_TMR5CS_POSN                                  0x6
#define _T5CON_TMR5CS_POSITION                              0x6
#define _T5CON_TMR5CS_SIZE                                  0x2
#define _T5CON_TMR5CS_LENGTH                                0x2
#define _T5CON_TMR5CS_MASK                                  0xC0
#define _T5CON_T5SYNC_POSN                                  0x2
#define _T5CON_T5SYNC_POSITION                              0x2
#define _T5CON_T5SYNC_SIZE                                  0x1
#define _T5CON_T5SYNC_LENGTH                                0x1
#define _T5CON_T5SYNC_MASK                                  0x4
#define _T5CON_T5CKPS0_POSN                                 0x4
#define _T5CON_T5CKPS0_POSITION                             0x4
#define _T5CON_T5CKPS0_SIZE                                 0x1
#define _T5CON_T5CKPS0_LENGTH                               0x1
#define _T5CON_T5CKPS0_MASK                                 0x10
#define _T5CON_T5CKPS1_POSN                                 0x5
#define _T5CON_T5CKPS1_POSITION                             0x5
#define _T5CON_T5CKPS1_SIZE                                 0x1
#define _T5CON_T5CKPS1_LENGTH                               0x1
#define _T5CON_T5CKPS1_MASK                                 0x20
#define _T5CON_TMR5CS0_POSN                                 0x6
#define _T5CON_TMR5CS0_POSITION                             0x6
#define _T5CON_TMR5CS0_SIZE                                 0x1
#define _T5CON_TMR5CS0_LENGTH                               0x1
#define _T5CON_TMR5CS0_MASK                                 0x40
#define _T5CON_TMR5CS1_POSN                                 0x7
#define _T5CON_TMR5CS1_POSITION                             0x7
#define _T5CON_TMR5CS1_SIZE                                 0x1
#define _T5CON_TMR5CS1_LENGTH                               0x1
#define _T5CON_TMR5CS1_MASK                                 0x80
#define _T5CON_RD165_POSN                                   0x1
#define _T5CON_RD165_POSITION                               0x1
#define _T5CON_RD165_SIZE                                   0x1
#define _T5CON_RD165_LENGTH                                 0x1
#define _T5CON_RD165_MASK                                   0x2
#define _T5CON_SOSCEN5_POSN                                 0x3
#define _T5CON_SOSCEN5_POSITION                             0x3
#define _T5CON_SOSCEN5_SIZE                                 0x1
#define _T5CON_SOSCEN5_LENGTH                               0x1
#define _T5CON_SOSCEN5_MASK                                 0x8

// Register: TMR5
extern volatile unsigned short          TMR5                @ 0xF4F;
#ifndef _LIB_BUILD
asm("TMR5 equ 0F4Fh");
#endif

// Register: TMR5L
extern volatile unsigned char           TMR5L               @ 0xF4F;
#ifndef _LIB_BUILD
asm("TMR5L equ 0F4Fh");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned TMR5L                  :8;
    };
} TMR5Lbits_t;
extern volatile TMR5Lbits_t TMR5Lbits @ 0xF4F;
// bitfield macros
#define _TMR5L_TMR5L_POSN                                   0x0
#define _TMR5L_TMR5L_POSITION                               0x0
#define _TMR5L_TMR5L_SIZE                                   0x8
#define _TMR5L_TMR5L_LENGTH                                 0x8
#define _TMR5L_TMR5L_MASK                                   0xFF

// Register: TMR5H
extern volatile unsigned char           TMR5H               @ 0xF50;
#ifndef _LIB_BUILD
asm("TMR5H equ 0F50h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned TMR5H                  :8;
    };
} TMR5Hbits_t;
extern volatile TMR5Hbits_t TMR5Hbits @ 0xF50;
// bitfield macros
#define _TMR5H_TMR5H_POSN                                   0x0
#define _TMR5H_TMR5H_POSITION                               0x0
#define _TMR5H_TMR5H_SIZE                                   0x8
#define _TMR5H_TMR5H_LENGTH                                 0x8
#define _TMR5H_TMR5H_MASK                                   0xFF

// Register: T4CON
extern volatile unsigned char           T4CON               @ 0xF51;
#ifndef _LIB_BUILD
asm("T4CON equ 0F51h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned T4CKPS                 :2;
        unsigned TMR4ON                 :1;
        unsigned T4OUTPS                :4;
    };
    struct {
        unsigned T4CKPS0                :1;
        unsigned T4CKPS1                :1;
        unsigned                        :1;
        unsigned T4OUTPS0               :1;
        unsigned T4OUTPS1               :1;
        unsigned T4OUTPS2               :1;
        unsigned T4OUTPS3               :1;
    };
} T4CONbits_t;
extern volatile T4CONbits_t T4CONbits @ 0xF51;
// bitfield macros
#define _T4CON_T4CKPS_POSN                                  0x0
#define _T4CON_T4CKPS_POSITION                              0x0
#define _T4CON_T4CKPS_SIZE                                  0x2
#define _T4CON_T4CKPS_LENGTH                                0x2
#define _T4CON_T4CKPS_MASK                                  0x3
#define _T4CON_TMR4ON_POSN                                  0x2
#define _T4CON_TMR4ON_POSITION                              0x2
#define _T4CON_TMR4ON_SIZE                                  0x1
#define _T4CON_TMR4ON_LENGTH                                0x1
#define _T4CON_TMR4ON_MASK                                  0x4
#define _T4CON_T4OUTPS_POSN                                 0x3
#define _T4CON_T4OUTPS_POSITION                             0x3
#define _T4CON_T4OUTPS_SIZE                                 0x4
#define _T4CON_T4OUTPS_LENGTH                               0x4
#define _T4CON_T4OUTPS_MASK                                 0x78
#define _T4CON_T4CKPS0_POSN                                 0x0
#define _T4CON_T4CKPS0_POSITION                             0x0
#define _T4CON_T4CKPS0_SIZE                                 0x1
#define _T4CON_T4CKPS0_LENGTH                               0x1
#define _T4CON_T4CKPS0_MASK                                 0x1
#define _T4CON_T4CKPS1_POSN                                 0x1
#define _T4CON_T4CKPS1_POSITION                             0x1
#define _T4CON_T4CKPS1_SIZE                                 0x1
#define _T4CON_T4CKPS1_LENGTH                               0x1
#define _T4CON_T4CKPS1_MASK                                 0x2
#define _T4CON_T4OUTPS0_POSN                                0x3
#define _T4CON_T4OUTPS0_POSITION                            0x3
#define _T4CON_T4OUTPS0_SIZE                                0x1
#define _T4CON_T4OUTPS0_LENGTH                              0x1
#define _T4CON_T4OUTPS0_MASK                                0x8
#define _T4CON_T4OUTPS1_POSN                                0x4
#define _T4CON_T4OUTPS1_POSITION                            0x4
#define _T4CON_T4OUTPS1_SIZE                                0x1
#define _T4CON_T4OUTPS1_LENGTH                              0x1
#define _T4CON_T4OUTPS1_MASK                                0x10
#define _T4CON_T4OUTPS2_POSN                                0x5
#define _T4CON_T4OUTPS2_POSITION                            0x5
#define _T4CON_T4OUTPS2_SIZE                                0x1
#define _T4CON_T4OUTPS2_LENGTH                              0x1
#define _T4CON_T4OUTPS2_MASK                                0x20
#define _T4CON_T4OUTPS3_POSN                                0x6
#define _T4CON_T4OUTPS3_POSITION                            0x6
#define _T4CON_T4OUTPS3_SIZE                                0x1
#define _T4CON_T4OUTPS3_LENGTH                              0x1
#define _T4CON_T4OUTPS3_MASK                                0x40

// Register: PR4
extern volatile unsigned char           PR4                 @ 0xF52;
#ifndef _LIB_BUILD
asm("PR4 equ 0F52h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned PR4                    :8;
    };
} PR4bits_t;
extern volatile PR4bits_t PR4bits @ 0xF52;
// bitfield macros
#define _PR4_PR4_POSN                                       0x0
#define _PR4_PR4_POSITION                                   0x0
#define _PR4_PR4_SIZE                                       0x8
#define _PR4_PR4_LENGTH                                     0x8
#define _PR4_PR4_MASK                                       0xFF

// Register: TMR4
extern volatile unsigned char           TMR4                @ 0xF53;
#ifndef _LIB_BUILD
asm("TMR4 equ 0F53h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned TMR4                   :8;
    };
} TMR4bits_t;
extern volatile TMR4bits_t TMR4bits @ 0xF53;
// bitfield macros
#define _TMR4_TMR4_POSN                                     0x0
#define _TMR4_TMR4_POSITION                                 0x0
#define _TMR4_TMR4_SIZE                                     0x8
#define _TMR4_TMR4_LENGTH                                   0x8
#define _TMR4_TMR4_MASK                                     0xFF

// Register: CCP5CON
extern volatile unsigned char           CCP5CON             @ 0xF54;
#ifndef _LIB_BUILD
asm("CCP5CON equ 0F54h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned CCP5M                  :4;
        unsigned DC5B                   :2;
    };
    struct {
        unsigned CCP5M0                 :1;
        unsigned CCP5M1                 :1;
        unsigned CCP5M2                 :1;
        unsigned CCP5M3                 :1;
        unsigned DC5B0                  :1;
        unsigned DC5B1                  :1;
    };
} CCP5CONbits_t;
extern volatile CCP5CONbits_t CCP5CONbits @ 0xF54;
// bitfield macros
#define _CCP5CON_CCP5M_POSN                                 0x0
#define _CCP5CON_CCP5M_POSITION                             0x0
#define _CCP5CON_CCP5M_SIZE                                 0x4
#define _CCP5CON_CCP5M_LENGTH                               0x4
#define _CCP5CON_CCP5M_MASK                                 0xF
#define _CCP5CON_DC5B_POSN                                  0x4
#define _CCP5CON_DC5B_POSITION                              0x4
#define _CCP5CON_DC5B_SIZE                                  0x2
#define _CCP5CON_DC5B_LENGTH                                0x2
#define _CCP5CON_DC5B_MASK                                  0x30
#define _CCP5CON_CCP5M0_POSN                                0x0
#define _CCP5CON_CCP5M0_POSITION                            0x0
#define _CCP5CON_CCP5M0_SIZE                                0x1
#define _CCP5CON_CCP5M0_LENGTH                              0x1
#define _CCP5CON_CCP5M0_MASK                                0x1
#define _CCP5CON_CCP5M1_POSN                                0x1
#define _CCP5CON_CCP5M1_POSITION                            0x1
#define _CCP5CON_CCP5M1_SIZE                                0x1
#define _CCP5CON_CCP5M1_LENGTH                              0x1
#define _CCP5CON_CCP5M1_MASK                                0x2
#define _CCP5CON_CCP5M2_POSN                                0x2
#define _CCP5CON_CCP5M2_POSITION                            0x2
#define _CCP5CON_CCP5M2_SIZE                                0x1
#define _CCP5CON_CCP5M2_LENGTH                              0x1
#define _CCP5CON_CCP5M2_MASK                                0x4
#define _CCP5CON_CCP5M3_POSN                                0x3
#define _CCP5CON_CCP5M3_POSITION                            0x3
#define _CCP5CON_CCP5M3_SIZE                                0x1
#define _CCP5CON_CCP5M3_LENGTH                              0x1
#define _CCP5CON_CCP5M3_MASK                                0x8
#define _CCP5CON_DC5B0_POSN                                 0x4
#define _CCP5CON_DC5B0_POSITION                             0x4
#define _CCP5CON_DC5B0_SIZE                                 0x1
#define _CCP5CON_DC5B0_LENGTH                               0x1
#define _CCP5CON_DC5B0_MASK                                 0x10
#define _CCP5CON_DC5B1_POSN                                 0x5
#define _CCP5CON_DC5B1_POSITION                             0x5
#define _CCP5CON_DC5B1_SIZE                                 0x1
#define _CCP5CON_DC5B1_LENGTH                               0x1
#define _CCP5CON_DC5B1_MASK                                 0x20

// Register: CCPR5
extern volatile unsigned short          CCPR5               @ 0xF55;
#ifndef _LIB_BUILD
asm("CCPR5 equ 0F55h");
#endif

// Register: CCPR5L
extern volatile unsigned char           CCPR5L              @ 0xF55;
#ifndef _LIB_BUILD
asm("CCPR5L equ 0F55h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned CCPR5L                 :8;
    };
} CCPR5Lbits_t;
extern volatile CCPR5Lbits_t CCPR5Lbits @ 0xF55;
// bitfield macros
#define _CCPR5L_CCPR5L_POSN                                 0x0
#define _CCPR5L_CCPR5L_POSITION                             0x0
#define _CCPR5L_CCPR5L_SIZE                                 0x8
#define _CCPR5L_CCPR5L_LENGTH                               0x8
#define _CCPR5L_CCPR5L_MASK                                 0xFF

// Register: CCPR5H
extern volatile unsigned char           CCPR5H              @ 0xF56;
#ifndef _LIB_BUILD
asm("CCPR5H equ 0F56h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned CCPR5H                 :8;
    };
} CCPR5Hbits_t;
extern volatile CCPR5Hbits_t CCPR5Hbits @ 0xF56;
// bitfield macros
#define _CCPR5H_CCPR5H_POSN                                 0x0
#define _CCPR5H_CCPR5H_POSITION                             0x0
#define _CCPR5H_CCPR5H_SIZE                                 0x8
#define _CCPR5H_CCPR5H_LENGTH                               0x8
#define _CCPR5H_CCPR5H_MASK                                 0xFF

// Register: CCP4CON
extern volatile unsigned char           CCP4CON             @ 0xF57;
#ifndef _LIB_BUILD
asm("CCP4CON equ 0F57h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned CCP4M                  :4;
        unsigned DC4B                   :2;
    };
    struct {
        unsigned CCP4M0                 :1;
        unsigned CCP4M1                 :1;
        unsigned CCP4M2                 :1;
        unsigned CCP4M3                 :1;
        unsigned DC4B0                  :1;
        unsigned DC4B1                  :1;
    };
} CCP4CONbits_t;
extern volatile CCP4CONbits_t CCP4CONbits @ 0xF57;
// bitfield macros
#define _CCP4CON_CCP4M_POSN                                 0x0
#define _CCP4CON_CCP4M_POSITION                             0x0
#define _CCP4CON_CCP4M_SIZE                                 0x4
#define _CCP4CON_CCP4M_LENGTH                               0x4
#define _CCP4CON_CCP4M_MASK                                 0xF
#define _CCP4CON_DC4B_POSN                                  0x4
#define _CCP4CON_DC4B_POSITION                              0x4
#define _CCP4CON_DC4B_SIZE                                  0x2
#define _CCP4CON_DC4B_LENGTH                                0x2
#define _CCP4CON_DC4B_MASK                                  0x30
#define _CCP4CON_CCP4M0_POSN                                0x0
#define _CCP4CON_CCP4M0_POSITION                            0x0
#define _CCP4CON_CCP4M0_SIZE                                0x1
#define _CCP4CON_CCP4M0_LENGTH                              0x1
#define _CCP4CON_CCP4M0_MASK                                0x1
#define _CCP4CON_CCP4M1_POSN                                0x1
#define _CCP4CON_CCP4M1_POSITION                            0x1
#define _CCP4CON_CCP4M1_SIZE                                0x1
#define _CCP4CON_CCP4M1_LENGTH                              0x1
#define _CCP4CON_CCP4M1_MASK                                0x2
#define _CCP4CON_CCP4M2_POSN                                0x2
#define _CCP4CON_CCP4M2_POSITION                            0x2
#define _CCP4CON_CCP4M2_SIZE                                0x1
#define _CCP4CON_CCP4M2_LENGTH                              0x1
#define _CCP4CON_CCP4M2_MASK                                0x4
#define _CCP4CON_CCP4M3_POSN                                0x3
#define _CCP4CON_CCP4M3_POSITION                            0x3
#define _CCP4CON_CCP4M3_SIZE                                0x1
#define _CCP4CON_CCP4M3_LENGTH                              0x1
#define _CCP4CON_CCP4M3_MASK                                0x8
#define _CCP4CON_DC4B0_POSN                                 0x4
#define _CCP4CON_DC4B0_POSITION                             0x4
#define _CCP4CON_DC4B0_SIZE                                 0x1
#define _CCP4CON_DC4B0_LENGTH                               0x1
#define _CCP4CON_DC4B0_MASK                                 0x10
#define _CCP4CON_DC4B1_POSN                                 0x5
#define _CCP4CON_DC4B1_POSITION                             0x5
#define _CCP4CON_DC4B1_SIZE                                 0x1
#define _CCP4CON_DC4B1_LENGTH                               0x1
#define _CCP4CON_DC4B1_MASK                                 0x20

// Register: CCPR4
extern volatile unsigned short          CCPR4               @ 0xF58;
#ifndef _LIB_BUILD
asm("CCPR4 equ 0F58h");
#endif

// Register: CCPR4L
extern volatile unsigned char           CCPR4L              @ 0xF58;
#ifndef _LIB_BUILD
asm("CCPR4L equ 0F58h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned CCPR4L                 :8;
    };
} CCPR4Lbits_t;
extern volatile CCPR4Lbits_t CCPR4Lbits @ 0xF58;
// bitfield macros
#define _CCPR4L_CCPR4L_POSN                                 0x0
#define _CCPR4L_CCPR4L_POSITION                             0x0
#define _CCPR4L_CCPR4L_SIZE                                 0x8
#define _CCPR4L_CCPR4L_LENGTH                               0x8
#define _CCPR4L_CCPR4L_MASK                                 0xFF

// Register: CCPR4H
extern volatile unsigned char           CCPR4H              @ 0xF59;
#ifndef _LIB_BUILD
asm("CCPR4H equ 0F59h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned CCPR4H                 :8;
    };
} CCPR4Hbits_t;
extern volatile CCPR4Hbits_t CCPR4Hbits @ 0xF59;
// bitfield macros
#define _CCPR4H_CCPR4H_POSN                                 0x0
#define _CCPR4H_CCPR4H_POSITION                             0x0
#define _CCPR4H_CCPR4H_SIZE                                 0x8
#define _CCPR4H_CCPR4H_LENGTH                               0x8
#define _CCPR4H_CCPR4H_MASK                                 0xFF

// Register: PSTR3CON
extern volatile unsigned char           PSTR3CON            @ 0xF5A;
#ifndef _LIB_BUILD
asm("PSTR3CON equ 0F5Ah");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned STR3A                  :1;
        unsigned STR3B                  :1;
        unsigned STR3C                  :1;
        unsigned STR3D                  :1;
        unsigned STR3SYNC               :1;
    };
    struct {
        unsigned STRA3                  :1;
        unsigned STRB3                  :1;
        unsigned STRC3                  :1;
        unsigned STRD3                  :1;
        unsigned STRSYNC3               :1;
    };
} PSTR3CONbits_t;
extern volatile PSTR3CONbits_t PSTR3CONbits @ 0xF5A;
// bitfield macros
#define _PSTR3CON_STR3A_POSN                                0x0
#define _PSTR3CON_STR3A_POSITION                            0x0
#define _PSTR3CON_STR3A_SIZE                                0x1
#define _PSTR3CON_STR3A_LENGTH                              0x1
#define _PSTR3CON_STR3A_MASK                                0x1
#define _PSTR3CON_STR3B_POSN                                0x1
#define _PSTR3CON_STR3B_POSITION                            0x1
#define _PSTR3CON_STR3B_SIZE                                0x1
#define _PSTR3CON_STR3B_LENGTH                              0x1
#define _PSTR3CON_STR3B_MASK                                0x2
#define _PSTR3CON_STR3C_POSN                                0x2
#define _PSTR3CON_STR3C_POSITION                            0x2
#define _PSTR3CON_STR3C_SIZE                                0x1
#define _PSTR3CON_STR3C_LENGTH                              0x1
#define _PSTR3CON_STR3C_MASK                                0x4
#define _PSTR3CON_STR3D_POSN                                0x3
#define _PSTR3CON_STR3D_POSITION                            0x3
#define _PSTR3CON_STR3D_SIZE                                0x1
#define _PSTR3CON_STR3D_LENGTH                              0x1
#define _PSTR3CON_STR3D_MASK                                0x8
#define _PSTR3CON_STR3SYNC_POSN                             0x4
#define _PSTR3CON_STR3SYNC_POSITION                         0x4
#define _PSTR3CON_STR3SYNC_SIZE                             0x1
#define _PSTR3CON_STR3SYNC_LENGTH                           0x1
#define _PSTR3CON_STR3SYNC_MASK                             0x10
#define _PSTR3CON_STRA3_POSN                                0x0
#define _PSTR3CON_STRA3_POSITION                            0x0
#define _PSTR3CON_STRA3_SIZE                                0x1
#define _PSTR3CON_STRA3_LENGTH                              0x1
#define _PSTR3CON_STRA3_MASK                                0x1
#define _PSTR3CON_STRB3_POSN                                0x1
#define _PSTR3CON_STRB3_POSITION                            0x1
#define _PSTR3CON_STRB3_SIZE                                0x1
#define _PSTR3CON_STRB3_LENGTH                              0x1
#define _PSTR3CON_STRB3_MASK                                0x2
#define _PSTR3CON_STRC3_POSN                                0x2
#define _PSTR3CON_STRC3_POSITION                            0x2
#define _PSTR3CON_STRC3_SIZE                                0x1
#define _PSTR3CON_STRC3_LENGTH                              0x1
#define _PSTR3CON_STRC3_MASK                                0x4
#define _PSTR3CON_STRD3_POSN                                0x3
#define _PSTR3CON_STRD3_POSITION                            0x3
#define _PSTR3CON_STRD3_SIZE                                0x1
#define _PSTR3CON_STRD3_LENGTH                              0x1
#define _PSTR3CON_STRD3_MASK                                0x8
#define _PSTR3CON_STRSYNC3_POSN                             0x4
#define _PSTR3CON_STRSYNC3_POSITION                         0x4
#define _PSTR3CON_STRSYNC3_SIZE                             0x1
#define _PSTR3CON_STRSYNC3_LENGTH                           0x1
#define _PSTR3CON_STRSYNC3_MASK                             0x10

// Register: ECCP3AS
extern volatile unsigned char           ECCP3AS             @ 0xF5B;
#ifndef _LIB_BUILD
asm("ECCP3AS equ 0F5Bh");
#endif
// aliases
extern volatile unsigned char           CCP3AS              @ 0xF5B;
#ifndef _LIB_BUILD
asm("CCP3AS equ 0F5Bh");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned P3SSBD                 :2;
        unsigned P3SSAC                 :2;
        unsigned CCP3AS                 :3;
        unsigned CCP3ASE                :1;
    };
    struct {
        unsigned P3SSBD0                :1;
        unsigned P3SSBD1                :1;
        unsigned P3SSAC0                :1;
        unsigned P3SSAC1                :1;
        unsigned CCP3AS0                :1;
        unsigned CCP3AS1                :1;
        unsigned CCP3AS2                :1;
    };
    struct {
        unsigned PSS3BD                 :2;
        unsigned PSS3AC                 :2;
    };
    struct {
        unsigned PSS3BD0                :1;
        unsigned PSS3BD1                :1;
        unsigned PSS3AC0                :1;
        unsigned PSS3AC1                :1;
    };
} ECCP3ASbits_t;
extern volatile ECCP3ASbits_t ECCP3ASbits @ 0xF5B;
// bitfield macros
#define _ECCP3AS_P3SSBD_POSN                                0x0
#define _ECCP3AS_P3SSBD_POSITION                            0x0
#define _ECCP3AS_P3SSBD_SIZE                                0x2
#define _ECCP3AS_P3SSBD_LENGTH                              0x2
#define _ECCP3AS_P3SSBD_MASK                                0x3
#define _ECCP3AS_P3SSAC_POSN                                0x2
#define _ECCP3AS_P3SSAC_POSITION                            0x2
#define _ECCP3AS_P3SSAC_SIZE                                0x2
#define _ECCP3AS_P3SSAC_LENGTH                              0x2
#define _ECCP3AS_P3SSAC_MASK                                0xC
#define _ECCP3AS_CCP3AS_POSN                                0x4
#define _ECCP3AS_CCP3AS_POSITION                            0x4
#define _ECCP3AS_CCP3AS_SIZE                                0x3
#define _ECCP3AS_CCP3AS_LENGTH                              0x3
#define _ECCP3AS_CCP3AS_MASK                                0x70
#define _ECCP3AS_CCP3ASE_POSN                               0x7
#define _ECCP3AS_CCP3ASE_POSITION                           0x7
#define _ECCP3AS_CCP3ASE_SIZE                               0x1
#define _ECCP3AS_CCP3ASE_LENGTH                             0x1
#define _ECCP3AS_CCP3ASE_MASK                               0x80
#define _ECCP3AS_P3SSBD0_POSN                               0x0
#define _ECCP3AS_P3SSBD0_POSITION                           0x0
#define _ECCP3AS_P3SSBD0_SIZE                               0x1
#define _ECCP3AS_P3SSBD0_LENGTH                             0x1
#define _ECCP3AS_P3SSBD0_MASK                               0x1
#define _ECCP3AS_P3SSBD1_POSN                               0x1
#define _ECCP3AS_P3SSBD1_POSITION                           0x1
#define _ECCP3AS_P3SSBD1_SIZE                               0x1
#define _ECCP3AS_P3SSBD1_LENGTH                             0x1
#define _ECCP3AS_P3SSBD1_MASK                               0x2
#define _ECCP3AS_P3SSAC0_POSN                               0x2
#define _ECCP3AS_P3SSAC0_POSITION                           0x2
#define _ECCP3AS_P3SSAC0_SIZE                               0x1
#define _ECCP3AS_P3SSAC0_LENGTH                             0x1
#define _ECCP3AS_P3SSAC0_MASK                               0x4
#define _ECCP3AS_P3SSAC1_POSN                               0x3
#define _ECCP3AS_P3SSAC1_POSITION                           0x3
#define _ECCP3AS_P3SSAC1_SIZE                               0x1
#define _ECCP3AS_P3SSAC1_LENGTH                             0x1
#define _ECCP3AS_P3SSAC1_MASK                               0x8
#define _ECCP3AS_CCP3AS0_POSN                               0x4
#define _ECCP3AS_CCP3AS0_POSITION                           0x4
#define _ECCP3AS_CCP3AS0_SIZE                               0x1
#define _ECCP3AS_CCP3AS0_LENGTH                             0x1
#define _ECCP3AS_CCP3AS0_MASK                               0x10
#define _ECCP3AS_CCP3AS1_POSN                               0x5
#define _ECCP3AS_CCP3AS1_POSITION                           0x5
#define _ECCP3AS_CCP3AS1_SIZE                               0x1
#define _ECCP3AS_CCP3AS1_LENGTH                             0x1
#define _ECCP3AS_CCP3AS1_MASK                               0x20
#define _ECCP3AS_CCP3AS2_POSN                               0x6
#define _ECCP3AS_CCP3AS2_POSITION                           0x6
#define _ECCP3AS_CCP3AS2_SIZE                               0x1
#define _ECCP3AS_CCP3AS2_LENGTH                             0x1
#define _ECCP3AS_CCP3AS2_MASK                               0x40
#define _ECCP3AS_PSS3BD_POSN                                0x0
#define _ECCP3AS_PSS3BD_POSITION                            0x0
#define _ECCP3AS_PSS3BD_SIZE                                0x2
#define _ECCP3AS_PSS3BD_LENGTH                              0x2
#define _ECCP3AS_PSS3BD_MASK                                0x3
#define _ECCP3AS_PSS3AC_POSN                                0x2
#define _ECCP3AS_PSS3AC_POSITION                            0x2
#define _ECCP3AS_PSS3AC_SIZE                                0x2
#define _ECCP3AS_PSS3AC_LENGTH                              0x2
#define _ECCP3AS_PSS3AC_MASK                                0xC
#define _ECCP3AS_PSS3BD0_POSN                               0x0
#define _ECCP3AS_PSS3BD0_POSITION                           0x0
#define _ECCP3AS_PSS3BD0_SIZE                               0x1
#define _ECCP3AS_PSS3BD0_LENGTH                             0x1
#define _ECCP3AS_PSS3BD0_MASK                               0x1
#define _ECCP3AS_PSS3BD1_POSN                               0x1
#define _ECCP3AS_PSS3BD1_POSITION                           0x1
#define _ECCP3AS_PSS3BD1_SIZE                               0x1
#define _ECCP3AS_PSS3BD1_LENGTH                             0x1
#define _ECCP3AS_PSS3BD1_MASK                               0x2
#define _ECCP3AS_PSS3AC0_POSN                               0x2
#define _ECCP3AS_PSS3AC0_POSITION                           0x2
#define _ECCP3AS_PSS3AC0_SIZE                               0x1
#define _ECCP3AS_PSS3AC0_LENGTH                             0x1
#define _ECCP3AS_PSS3AC0_MASK                               0x4
#define _ECCP3AS_PSS3AC1_POSN                               0x3
#define _ECCP3AS_PSS3AC1_POSITION                           0x3
#define _ECCP3AS_PSS3AC1_SIZE                               0x1
#define _ECCP3AS_PSS3AC1_LENGTH                             0x1
#define _ECCP3AS_PSS3AC1_MASK                               0x8
// alias bitfield definitions
typedef union {
    struct {
        unsigned P3SSBD                 :2;
        unsigned P3SSAC                 :2;
        unsigned CCP3AS                 :3;
        unsigned CCP3ASE                :1;
    };
    struct {
        unsigned P3SSBD0                :1;
        unsigned P3SSBD1                :1;
        unsigned P3SSAC0                :1;
        unsigned P3SSAC1                :1;
        unsigned CCP3AS0                :1;
        unsigned CCP3AS1                :1;
        unsigned CCP3AS2                :1;
    };
    struct {
        unsigned PSS3BD                 :2;
        unsigned PSS3AC                 :2;
    };
    struct {
        unsigned PSS3BD0                :1;
        unsigned PSS3BD1                :1;
        unsigned PSS3AC0                :1;
        unsigned PSS3AC1                :1;
    };
} CCP3ASbits_t;
extern volatile CCP3ASbits_t CCP3ASbits @ 0xF5B;
// bitfield macros
#define _CCP3AS_P3SSBD_POSN                                 0x0
#define _CCP3AS_P3SSBD_POSITION                             0x0
#define _CCP3AS_P3SSBD_SIZE                                 0x2
#define _CCP3AS_P3SSBD_LENGTH                               0x2
#define _CCP3AS_P3SSBD_MASK                                 0x3
#define _CCP3AS_P3SSAC_POSN                                 0x2
#define _CCP3AS_P3SSAC_POSITION                             0x2
#define _CCP3AS_P3SSAC_SIZE                                 0x2
#define _CCP3AS_P3SSAC_LENGTH                               0x2
#define _CCP3AS_P3SSAC_MASK                                 0xC
#define _CCP3AS_CCP3AS_POSN                                 0x4
#define _CCP3AS_CCP3AS_POSITION                             0x4
#define _CCP3AS_CCP3AS_SIZE                                 0x3
#define _CCP3AS_CCP3AS_LENGTH                               0x3
#define _CCP3AS_CCP3AS_MASK                                 0x70
#define _CCP3AS_CCP3ASE_POSN                                0x7
#define _CCP3AS_CCP3ASE_POSITION                            0x7
#define _CCP3AS_CCP3ASE_SIZE                                0x1
#define _CCP3AS_CCP3ASE_LENGTH                              0x1
#define _CCP3AS_CCP3ASE_MASK                                0x80
#define _CCP3AS_P3SSBD0_POSN                                0x0
#define _CCP3AS_P3SSBD0_POSITION                            0x0
#define _CCP3AS_P3SSBD0_SIZE                                0x1
#define _CCP3AS_P3SSBD0_LENGTH                              0x1
#define _CCP3AS_P3SSBD0_MASK                                0x1
#define _CCP3AS_P3SSBD1_POSN                                0x1
#define _CCP3AS_P3SSBD1_POSITION                            0x1
#define _CCP3AS_P3SSBD1_SIZE                                0x1
#define _CCP3AS_P3SSBD1_LENGTH                              0x1
#define _CCP3AS_P3SSBD1_MASK                                0x2
#define _CCP3AS_P3SSAC0_POSN                                0x2
#define _CCP3AS_P3SSAC0_POSITION                            0x2
#define _CCP3AS_P3SSAC0_SIZE                                0x1
#define _CCP3AS_P3SSAC0_LENGTH                              0x1
#define _CCP3AS_P3SSAC0_MASK                                0x4
#define _CCP3AS_P3SSAC1_POSN                                0x3
#define _CCP3AS_P3SSAC1_POSITION                            0x3
#define _CCP3AS_P3SSAC1_SIZE                                0x1
#define _CCP3AS_P3SSAC1_LENGTH                              0x1
#define _CCP3AS_P3SSAC1_MASK                                0x8
#define _CCP3AS_CCP3AS0_POSN                                0x4
#define _CCP3AS_CCP3AS0_POSITION                            0x4
#define _CCP3AS_CCP3AS0_SIZE                                0x1
#define _CCP3AS_CCP3AS0_LENGTH                              0x1
#define _CCP3AS_CCP3AS0_MASK                                0x10
#define _CCP3AS_CCP3AS1_POSN                                0x5
#define _CCP3AS_CCP3AS1_POSITION                            0x5
#define _CCP3AS_CCP3AS1_SIZE                                0x1
#define _CCP3AS_CCP3AS1_LENGTH                              0x1
#define _CCP3AS_CCP3AS1_MASK                                0x20
#define _CCP3AS_CCP3AS2_POSN                                0x6
#define _CCP3AS_CCP3AS2_POSITION                            0x6
#define _CCP3AS_CCP3AS2_SIZE                                0x1
#define _CCP3AS_CCP3AS2_LENGTH                              0x1
#define _CCP3AS_CCP3AS2_MASK                                0x40
#define _CCP3AS_PSS3BD_POSN                                 0x0
#define _CCP3AS_PSS3BD_POSITION                             0x0
#define _CCP3AS_PSS3BD_SIZE                                 0x2
#define _CCP3AS_PSS3BD_LENGTH                               0x2
#define _CCP3AS_PSS3BD_MASK                                 0x3
#define _CCP3AS_PSS3AC_POSN                                 0x2
#define _CCP3AS_PSS3AC_POSITION                             0x2
#define _CCP3AS_PSS3AC_SIZE                                 0x2
#define _CCP3AS_PSS3AC_LENGTH                               0x2
#define _CCP3AS_PSS3AC_MASK                                 0xC
#define _CCP3AS_PSS3BD0_POSN                                0x0
#define _CCP3AS_PSS3BD0_POSITION                            0x0
#define _CCP3AS_PSS3BD0_SIZE                                0x1
#define _CCP3AS_PSS3BD0_LENGTH                              0x1
#define _CCP3AS_PSS3BD0_MASK                                0x1
#define _CCP3AS_PSS3BD1_POSN                                0x1
#define _CCP3AS_PSS3BD1_POSITION                            0x1
#define _CCP3AS_PSS3BD1_SIZE                                0x1
#define _CCP3AS_PSS3BD1_LENGTH                              0x1
#define _CCP3AS_PSS3BD1_MASK                                0x2
#define _CCP3AS_PSS3AC0_POSN                                0x2
#define _CCP3AS_PSS3AC0_POSITION                            0x2
#define _CCP3AS_PSS3AC0_SIZE                                0x1
#define _CCP3AS_PSS3AC0_LENGTH                              0x1
#define _CCP3AS_PSS3AC0_MASK                                0x4
#define _CCP3AS_PSS3AC1_POSN                                0x3
#define _CCP3AS_PSS3AC1_POSITION                            0x3
#define _CCP3AS_PSS3AC1_SIZE                                0x1
#define _CCP3AS_PSS3AC1_LENGTH                              0x1
#define _CCP3AS_PSS3AC1_MASK                                0x8

// Register: PWM3CON
extern volatile unsigned char           PWM3CON             @ 0xF5C;
#ifndef _LIB_BUILD
asm("PWM3CON equ 0F5Ch");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned P3DC                   :7;
        unsigned P3RSEN                 :1;
    };
    struct {
        unsigned P3DC0                  :1;
        unsigned P3DC1                  :1;
        unsigned P3DC2                  :1;
        unsigned P3DC3                  :1;
        unsigned P3DC4                  :1;
        unsigned P3DC5                  :1;
        unsigned P3DC6                  :1;
    };
} PWM3CONbits_t;
extern volatile PWM3CONbits_t PWM3CONbits @ 0xF5C;
// bitfield macros
#define _PWM3CON_P3DC_POSN                                  0x0
#define _PWM3CON_P3DC_POSITION                              0x0
#define _PWM3CON_P3DC_SIZE                                  0x7
#define _PWM3CON_P3DC_LENGTH                                0x7
#define _PWM3CON_P3DC_MASK                                  0x7F
#define _PWM3CON_P3RSEN_POSN                                0x7
#define _PWM3CON_P3RSEN_POSITION                            0x7
#define _PWM3CON_P3RSEN_SIZE                                0x1
#define _PWM3CON_P3RSEN_LENGTH                              0x1
#define _PWM3CON_P3RSEN_MASK                                0x80
#define _PWM3CON_P3DC0_POSN                                 0x0
#define _PWM3CON_P3DC0_POSITION                             0x0
#define _PWM3CON_P3DC0_SIZE                                 0x1
#define _PWM3CON_P3DC0_LENGTH                               0x1
#define _PWM3CON_P3DC0_MASK                                 0x1
#define _PWM3CON_P3DC1_POSN                                 0x1
#define _PWM3CON_P3DC1_POSITION                             0x1
#define _PWM3CON_P3DC1_SIZE                                 0x1
#define _PWM3CON_P3DC1_LENGTH                               0x1
#define _PWM3CON_P3DC1_MASK                                 0x2
#define _PWM3CON_P3DC2_POSN                                 0x2
#define _PWM3CON_P3DC2_POSITION                             0x2
#define _PWM3CON_P3DC2_SIZE                                 0x1
#define _PWM3CON_P3DC2_LENGTH                               0x1
#define _PWM3CON_P3DC2_MASK                                 0x4
#define _PWM3CON_P3DC3_POSN                                 0x3
#define _PWM3CON_P3DC3_POSITION                             0x3
#define _PWM3CON_P3DC3_SIZE                                 0x1
#define _PWM3CON_P3DC3_LENGTH                               0x1
#define _PWM3CON_P3DC3_MASK                                 0x8
#define _PWM3CON_P3DC4_POSN                                 0x4
#define _PWM3CON_P3DC4_POSITION                             0x4
#define _PWM3CON_P3DC4_SIZE                                 0x1
#define _PWM3CON_P3DC4_LENGTH                               0x1
#define _PWM3CON_P3DC4_MASK                                 0x10
#define _PWM3CON_P3DC5_POSN                                 0x5
#define _PWM3CON_P3DC5_POSITION                             0x5
#define _PWM3CON_P3DC5_SIZE                                 0x1
#define _PWM3CON_P3DC5_LENGTH                               0x1
#define _PWM3CON_P3DC5_MASK                                 0x20
#define _PWM3CON_P3DC6_POSN                                 0x6
#define _PWM3CON_P3DC6_POSITION                             0x6
#define _PWM3CON_P3DC6_SIZE                                 0x1
#define _PWM3CON_P3DC6_LENGTH                               0x1
#define _PWM3CON_P3DC6_MASK                                 0x40

// Register: CCP3CON
extern volatile unsigned char           CCP3CON             @ 0xF5D;
#ifndef _LIB_BUILD
asm("CCP3CON equ 0F5Dh");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned CCP3M                  :4;
        unsigned DC3B                   :2;
        unsigned P3M                    :2;
    };
    struct {
        unsigned CCP3M0                 :1;
        unsigned CCP3M1                 :1;
        unsigned CCP3M2                 :1;
        unsigned CCP3M3                 :1;
        unsigned DC3B0                  :1;
        unsigned DC3B1                  :1;
        unsigned P3M0                   :1;
        unsigned P3M1                   :1;
    };
} CCP3CONbits_t;
extern volatile CCP3CONbits_t CCP3CONbits @ 0xF5D;
// bitfield macros
#define _CCP3CON_CCP3M_POSN                                 0x0
#define _CCP3CON_CCP3M_POSITION                             0x0
#define _CCP3CON_CCP3M_SIZE                                 0x4
#define _CCP3CON_CCP3M_LENGTH                               0x4
#define _CCP3CON_CCP3M_MASK                                 0xF
#define _CCP3CON_DC3B_POSN                                  0x4
#define _CCP3CON_DC3B_POSITION                              0x4
#define _CCP3CON_DC3B_SIZE                                  0x2
#define _CCP3CON_DC3B_LENGTH                                0x2
#define _CCP3CON_DC3B_MASK                                  0x30
#define _CCP3CON_P3M_POSN                                   0x6
#define _CCP3CON_P3M_POSITION                               0x6
#define _CCP3CON_P3M_SIZE                                   0x2
#define _CCP3CON_P3M_LENGTH                                 0x2
#define _CCP3CON_P3M_MASK                                   0xC0
#define _CCP3CON_CCP3M0_POSN                                0x0
#define _CCP3CON_CCP3M0_POSITION                            0x0
#define _CCP3CON_CCP3M0_SIZE                                0x1
#define _CCP3CON_CCP3M0_LENGTH                              0x1
#define _CCP3CON_CCP3M0_MASK                                0x1
#define _CCP3CON_CCP3M1_POSN                                0x1
#define _CCP3CON_CCP3M1_POSITION                            0x1
#define _CCP3CON_CCP3M1_SIZE                                0x1
#define _CCP3CON_CCP3M1_LENGTH                              0x1
#define _CCP3CON_CCP3M1_MASK                                0x2
#define _CCP3CON_CCP3M2_POSN                                0x2
#define _CCP3CON_CCP3M2_POSITION                            0x2
#define _CCP3CON_CCP3M2_SIZE                                0x1
#define _CCP3CON_CCP3M2_LENGTH                              0x1
#define _CCP3CON_CCP3M2_MASK                                0x4
#define _CCP3CON_CCP3M3_POSN                                0x3
#define _CCP3CON_CCP3M3_POSITION                            0x3
#define _CCP3CON_CCP3M3_SIZE                                0x1
#define _CCP3CON_CCP3M3_LENGTH                              0x1
#define _CCP3CON_CCP3M3_MASK                                0x8
#define _CCP3CON_DC3B0_POSN                                 0x4
#define _CCP3CON_DC3B0_POSITION                             0x4
#define _CCP3CON_DC3B0_SIZE                                 0x1
#define _CCP3CON_DC3B0_LENGTH                               0x1
#define _CCP3CON_DC3B0_MASK                                 0x10
#define _CCP3CON_DC3B1_POSN                                 0x5
#define _CCP3CON_DC3B1_POSITION                             0x5
#define _CCP3CON_DC3B1_SIZE                                 0x1
#define _CCP3CON_DC3B1_LENGTH                               0x1
#define _CCP3CON_DC3B1_MASK                                 0x20
#define _CCP3CON_P3M0_POSN                                  0x6
#define _CCP3CON_P3M0_POSITION                              0x6
#define _CCP3CON_P3M0_SIZE                                  0x1
#define _CCP3CON_P3M0_LENGTH                                0x1
#define _CCP3CON_P3M0_MASK                                  0x40
#define _CCP3CON_P3M1_POSN                                  0x7
#define _CCP3CON_P3M1_POSITION                              0x7
#define _CCP3CON_P3M1_SIZE                                  0x1
#define _CCP3CON_P3M1_LENGTH                                0x1
#define _CCP3CON_P3M1_MASK                                  0x80

// Register: CCPR3
extern volatile unsigned short          CCPR3               @ 0xF5E;
#ifndef _LIB_BUILD
asm("CCPR3 equ 0F5Eh");
#endif

// Register: CCPR3L
extern volatile unsigned char           CCPR3L              @ 0xF5E;
#ifndef _LIB_BUILD
asm("CCPR3L equ 0F5Eh");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned CCPR3L                 :8;
    };
} CCPR3Lbits_t;
extern volatile CCPR3Lbits_t CCPR3Lbits @ 0xF5E;
// bitfield macros
#define _CCPR3L_CCPR3L_POSN                                 0x0
#define _CCPR3L_CCPR3L_POSITION                             0x0
#define _CCPR3L_CCPR3L_SIZE                                 0x8
#define _CCPR3L_CCPR3L_LENGTH                               0x8
#define _CCPR3L_CCPR3L_MASK                                 0xFF

// Register: CCPR3H
extern volatile unsigned char           CCPR3H              @ 0xF5F;
#ifndef _LIB_BUILD
asm("CCPR3H equ 0F5Fh");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned CCPR3H                 :8;
    };
} CCPR3Hbits_t;
extern volatile CCPR3Hbits_t CCPR3Hbits @ 0xF5F;
// bitfield macros
#define _CCPR3H_CCPR3H_POSN                                 0x0
#define _CCPR3H_CCPR3H_POSITION                             0x0
#define _CCPR3H_CCPR3H_SIZE                                 0x8
#define _CCPR3H_CCPR3H_LENGTH                               0x8
#define _CCPR3H_CCPR3H_MASK                                 0xFF

// Register: SLRCON
extern volatile unsigned char           SLRCON              @ 0xF60;
#ifndef _LIB_BUILD
asm("SLRCON equ 0F60h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned SLRA                   :1;
        unsigned SLRB                   :1;
        unsigned SLRC                   :1;
    };
} SLRCONbits_t;
extern volatile SLRCONbits_t SLRCONbits @ 0xF60;
// bitfield macros
#define _SLRCON_SLRA_POSN                                   0x0
#define _SLRCON_SLRA_POSITION                               0x0
#define _SLRCON_SLRA_SIZE                                   0x1
#define _SLRCON_SLRA_LENGTH                                 0x1
#define _SLRCON_SLRA_MASK                                   0x1
#define _SLRCON_SLRB_POSN                                   0x1
#define _SLRCON_SLRB_POSITION                               0x1
#define _SLRCON_SLRB_SIZE                                   0x1
#define _SLRCON_SLRB_LENGTH                                 0x1
#define _SLRCON_SLRB_MASK                                   0x2
#define _SLRCON_SLRC_POSN                                   0x2
#define _SLRCON_SLRC_POSITION                               0x2
#define _SLRCON_SLRC_SIZE                                   0x1
#define _SLRCON_SLRC_LENGTH                                 0x1
#define _SLRCON_SLRC_MASK                                   0x4

// Register: WPUB
extern volatile unsigned char           WPUB                @ 0xF61;
#ifndef _LIB_BUILD
asm("WPUB equ 0F61h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned WPUB0                  :1;
        unsigned WPUB1                  :1;
        unsigned WPUB2                  :1;
        unsigned WPUB3                  :1;
        unsigned WPUB4                  :1;
        unsigned WPUB5                  :1;
        unsigned WPUB6                  :1;
        unsigned WPUB7                  :1;
    };
} WPUBbits_t;
extern volatile WPUBbits_t WPUBbits @ 0xF61;
// bitfield macros
#define _WPUB_WPUB0_POSN                                    0x0
#define _WPUB_WPUB0_POSITION                                0x0
#define _WPUB_WPUB0_SIZE                                    0x1
#define _WPUB_WPUB0_LENGTH                                  0x1
#define _WPUB_WPUB0_MASK                                    0x1
#define _WPUB_WPUB1_POSN                                    0x1
#define _WPUB_WPUB1_POSITION                                0x1
#define _WPUB_WPUB1_SIZE                                    0x1
#define _WPUB_WPUB1_LENGTH                                  0x1
#define _WPUB_WPUB1_MASK                                    0x2
#define _WPUB_WPUB2_POSN                                    0x2
#define _WPUB_WPUB2_POSITION                                0x2
#define _WPUB_WPUB2_SIZE                                    0x1
#define _WPUB_WPUB2_LENGTH                                  0x1
#define _WPUB_WPUB2_MASK                                    0x4
#define _WPUB_WPUB3_POSN                                    0x3
#define _WPUB_WPUB3_POSITION                                0x3
#define _WPUB_WPUB3_SIZE                                    0x1
#define _WPUB_WPUB3_LENGTH                                  0x1
#define _WPUB_WPUB3_MASK                                    0x8
#define _WPUB_WPUB4_POSN                                    0x4
#define _WPUB_WPUB4_POSITION                                0x4
#define _WPUB_WPUB4_SIZE                                    0x1
#define _WPUB_WPUB4_LENGTH                                  0x1
#define _WPUB_WPUB4_MASK                                    0x10
#define _WPUB_WPUB5_POSN                                    0x5
#define _WPUB_WPUB5_POSITION                                0x5
#define _WPUB_WPUB5_SIZE                                    0x1
#define _WPUB_WPUB5_LENGTH                                  0x1
#define _WPUB_WPUB5_MASK                                    0x20
#define _WPUB_WPUB6_POSN                                    0x6
#define _WPUB_WPUB6_POSITION                                0x6
#define _WPUB_WPUB6_SIZE                                    0x1
#define _WPUB_WPUB6_LENGTH                                  0x1
#define _WPUB_WPUB6_MASK                                    0x40
#define _WPUB_WPUB7_POSN                                    0x7
#define _WPUB_WPUB7_POSITION                                0x7
#define _WPUB_WPUB7_SIZE                                    0x1
#define _WPUB_WPUB7_LENGTH                                  0x1
#define _WPUB_WPUB7_MASK                                    0x80

// Register: IOCB
extern volatile unsigned char           IOCB                @ 0xF62;
#ifndef _LIB_BUILD
asm("IOCB equ 0F62h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned                        :4;
        unsigned IOCB4                  :1;
        unsigned IOCB5                  :1;
        unsigned IOCB6                  :1;
        unsigned IOCB7                  :1;
    };
} IOCBbits_t;
extern volatile IOCBbits_t IOCBbits @ 0xF62;
// bitfield macros
#define _IOCB_IOCB4_POSN                                    0x4
#define _IOCB_IOCB4_POSITION                                0x4
#define _IOCB_IOCB4_SIZE                                    0x1
#define _IOCB_IOCB4_LENGTH                                  0x1
#define _IOCB_IOCB4_MASK                                    0x10
#define _IOCB_IOCB5_POSN                                    0x5
#define _IOCB_IOCB5_POSITION                                0x5
#define _IOCB_IOCB5_SIZE                                    0x1
#define _IOCB_IOCB5_LENGTH                                  0x1
#define _IOCB_IOCB5_MASK                                    0x20
#define _IOCB_IOCB6_POSN                                    0x6
#define _IOCB_IOCB6_POSITION                                0x6
#define _IOCB_IOCB6_SIZE                                    0x1
#define _IOCB_IOCB6_LENGTH                                  0x1
#define _IOCB_IOCB6_MASK                                    0x40
#define _IOCB_IOCB7_POSN                                    0x7
#define _IOCB_IOCB7_POSITION                                0x7
#define _IOCB_IOCB7_SIZE                                    0x1
#define _IOCB_IOCB7_LENGTH                                  0x1
#define _IOCB_IOCB7_MASK                                    0x80

// Register: PSTR2CON
extern volatile unsigned char           PSTR2CON            @ 0xF63;
#ifndef _LIB_BUILD
asm("PSTR2CON equ 0F63h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned STR2A                  :1;
        unsigned STR2B                  :1;
        unsigned STR2C                  :1;
        unsigned STR2D                  :1;
        unsigned STR2SYNC               :1;
    };
    struct {
        unsigned P2DC02                 :1;
        unsigned P2DC12                 :1;
        unsigned P2DC22                 :1;
        unsigned P2DC32                 :1;
        unsigned P2DC42                 :1;
    };
    struct {
        unsigned P2DC0CON               :1;
        unsigned P2DC1CON               :1;
        unsigned P2DC2CON               :1;
        unsigned P2DC3CON               :1;
        unsigned P2DC4CON               :1;
    };
    struct {
        unsigned STRA2                  :1;
        unsigned STRB2                  :1;
        unsigned STRC2                  :1;
        unsigned STRD2                  :1;
        unsigned STRSYNC2               :1;
    };
} PSTR2CONbits_t;
extern volatile PSTR2CONbits_t PSTR2CONbits @ 0xF63;
// bitfield macros
#define _PSTR2CON_STR2A_POSN                                0x0
#define _PSTR2CON_STR2A_POSITION                            0x0
#define _PSTR2CON_STR2A_SIZE                                0x1
#define _PSTR2CON_STR2A_LENGTH                              0x1
#define _PSTR2CON_STR2A_MASK                                0x1
#define _PSTR2CON_STR2B_POSN                                0x1
#define _PSTR2CON_STR2B_POSITION                            0x1
#define _PSTR2CON_STR2B_SIZE                                0x1
#define _PSTR2CON_STR2B_LENGTH                              0x1
#define _PSTR2CON_STR2B_MASK                                0x2
#define _PSTR2CON_STR2C_POSN                                0x2
#define _PSTR2CON_STR2C_POSITION                            0x2
#define _PSTR2CON_STR2C_SIZE                                0x1
#define _PSTR2CON_STR2C_LENGTH                              0x1
#define _PSTR2CON_STR2C_MASK                                0x4
#define _PSTR2CON_STR2D_POSN                                0x3
#define _PSTR2CON_STR2D_POSITION                            0x3
#define _PSTR2CON_STR2D_SIZE                                0x1
#define _PSTR2CON_STR2D_LENGTH                              0x1
#define _PSTR2CON_STR2D_MASK                                0x8
#define _PSTR2CON_STR2SYNC_POSN                             0x4
#define _PSTR2CON_STR2SYNC_POSITION                         0x4
#define _PSTR2CON_STR2SYNC_SIZE                             0x1
#define _PSTR2CON_STR2SYNC_LENGTH                           0x1
#define _PSTR2CON_STR2SYNC_MASK                             0x10
#define _PSTR2CON_P2DC02_POSN                               0x0
#define _PSTR2CON_P2DC02_POSITION                           0x0
#define _PSTR2CON_P2DC02_SIZE                               0x1
#define _PSTR2CON_P2DC02_LENGTH                             0x1
#define _PSTR2CON_P2DC02_MASK                               0x1
#define _PSTR2CON_P2DC12_POSN                               0x1
#define _PSTR2CON_P2DC12_POSITION                           0x1
#define _PSTR2CON_P2DC12_SIZE                               0x1
#define _PSTR2CON_P2DC12_LENGTH                             0x1
#define _PSTR2CON_P2DC12_MASK                               0x2
#define _PSTR2CON_P2DC22_POSN                               0x2
#define _PSTR2CON_P2DC22_POSITION                           0x2
#define _PSTR2CON_P2DC22_SIZE                               0x1
#define _PSTR2CON_P2DC22_LENGTH                             0x1
#define _PSTR2CON_P2DC22_MASK                               0x4
#define _PSTR2CON_P2DC32_POSN                               0x3
#define _PSTR2CON_P2DC32_POSITION                           0x3
#define _PSTR2CON_P2DC32_SIZE                               0x1
#define _PSTR2CON_P2DC32_LENGTH                             0x1
#define _PSTR2CON_P2DC32_MASK                               0x8
#define _PSTR2CON_P2DC42_POSN                               0x4
#define _PSTR2CON_P2DC42_POSITION                           0x4
#define _PSTR2CON_P2DC42_SIZE                               0x1
#define _PSTR2CON_P2DC42_LENGTH                             0x1
#define _PSTR2CON_P2DC42_MASK                               0x10
#define _PSTR2CON_P2DC0CON_POSN                             0x0
#define _PSTR2CON_P2DC0CON_POSITION                         0x0
#define _PSTR2CON_P2DC0CON_SIZE                             0x1
#define _PSTR2CON_P2DC0CON_LENGTH                           0x1
#define _PSTR2CON_P2DC0CON_MASK                             0x1
#define _PSTR2CON_P2DC1CON_POSN                             0x1
#define _PSTR2CON_P2DC1CON_POSITION                         0x1
#define _PSTR2CON_P2DC1CON_SIZE                             0x1
#define _PSTR2CON_P2DC1CON_LENGTH                           0x1
#define _PSTR2CON_P2DC1CON_MASK                             0x2
#define _PSTR2CON_P2DC2CON_POSN                             0x2
#define _PSTR2CON_P2DC2CON_POSITION                         0x2
#define _PSTR2CON_P2DC2CON_SIZE                             0x1
#define _PSTR2CON_P2DC2CON_LENGTH                           0x1
#define _PSTR2CON_P2DC2CON_MASK                             0x4
#define _PSTR2CON_P2DC3CON_POSN                             0x3
#define _PSTR2CON_P2DC3CON_POSITION                         0x3
#define _PSTR2CON_P2DC3CON_SIZE                             0x1
#define _PSTR2CON_P2DC3CON_LENGTH                           0x1
#define _PSTR2CON_P2DC3CON_MASK                             0x8
#define _PSTR2CON_P2DC4CON_POSN                             0x4
#define _PSTR2CON_P2DC4CON_POSITION                         0x4
#define _PSTR2CON_P2DC4CON_SIZE                             0x1
#define _PSTR2CON_P2DC4CON_LENGTH                           0x1
#define _PSTR2CON_P2DC4CON_MASK                             0x10
#define _PSTR2CON_STRA2_POSN                                0x0
#define _PSTR2CON_STRA2_POSITION                            0x0
#define _PSTR2CON_STRA2_SIZE                                0x1
#define _PSTR2CON_STRA2_LENGTH                              0x1
#define _PSTR2CON_STRA2_MASK                                0x1
#define _PSTR2CON_STRB2_POSN                                0x1
#define _PSTR2CON_STRB2_POSITION                            0x1
#define _PSTR2CON_STRB2_SIZE                                0x1
#define _PSTR2CON_STRB2_LENGTH                              0x1
#define _PSTR2CON_STRB2_MASK                                0x2
#define _PSTR2CON_STRC2_POSN                                0x2
#define _PSTR2CON_STRC2_POSITION                            0x2
#define _PSTR2CON_STRC2_SIZE                                0x1
#define _PSTR2CON_STRC2_LENGTH                              0x1
#define _PSTR2CON_STRC2_MASK                                0x4
#define _PSTR2CON_STRD2_POSN                                0x3
#define _PSTR2CON_STRD2_POSITION                            0x3
#define _PSTR2CON_STRD2_SIZE                                0x1
#define _PSTR2CON_STRD2_LENGTH                              0x1
#define _PSTR2CON_STRD2_MASK                                0x8
#define _PSTR2CON_STRSYNC2_POSN                             0x4
#define _PSTR2CON_STRSYNC2_POSITION                         0x4
#define _PSTR2CON_STRSYNC2_SIZE                             0x1
#define _PSTR2CON_STRSYNC2_LENGTH                           0x1
#define _PSTR2CON_STRSYNC2_MASK                             0x10

// Register: ECCP2AS
extern volatile unsigned char           ECCP2AS             @ 0xF64;
#ifndef _LIB_BUILD
asm("ECCP2AS equ 0F64h");
#endif
// aliases
extern volatile unsigned char           CCP2AS              @ 0xF64;
#ifndef _LIB_BUILD
asm("CCP2AS equ 0F64h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned P2SSBD                 :2;
        unsigned P2SSAC                 :2;
        unsigned CCP2AS                 :3;
        unsigned CCP2ASE                :1;
    };
    struct {
        unsigned P2SSBD0                :1;
        unsigned P2SSBD1                :1;
        unsigned P2SSAC0                :1;
        unsigned P2SSAC1                :1;
        unsigned CCP2AS0                :1;
        unsigned CCP2AS1                :1;
        unsigned CCP2AS2                :1;
    };
    struct {
        unsigned PSS2BD                 :2;
        unsigned PSS2AC                 :2;
    };
    struct {
        unsigned PSS2BD0                :1;
        unsigned PSS2BD1                :1;
        unsigned PSS2AC0                :1;
        unsigned PSS2AC1                :1;
    };
} ECCP2ASbits_t;
extern volatile ECCP2ASbits_t ECCP2ASbits @ 0xF64;
// bitfield macros
#define _ECCP2AS_P2SSBD_POSN                                0x0
#define _ECCP2AS_P2SSBD_POSITION                            0x0
#define _ECCP2AS_P2SSBD_SIZE                                0x2
#define _ECCP2AS_P2SSBD_LENGTH                              0x2
#define _ECCP2AS_P2SSBD_MASK                                0x3
#define _ECCP2AS_P2SSAC_POSN                                0x2
#define _ECCP2AS_P2SSAC_POSITION                            0x2
#define _ECCP2AS_P2SSAC_SIZE                                0x2
#define _ECCP2AS_P2SSAC_LENGTH                              0x2
#define _ECCP2AS_P2SSAC_MASK                                0xC
#define _ECCP2AS_CCP2AS_POSN                                0x4
#define _ECCP2AS_CCP2AS_POSITION                            0x4
#define _ECCP2AS_CCP2AS_SIZE                                0x3
#define _ECCP2AS_CCP2AS_LENGTH                              0x3
#define _ECCP2AS_CCP2AS_MASK                                0x70
#define _ECCP2AS_CCP2ASE_POSN                               0x7
#define _ECCP2AS_CCP2ASE_POSITION                           0x7
#define _ECCP2AS_CCP2ASE_SIZE                               0x1
#define _ECCP2AS_CCP2ASE_LENGTH                             0x1
#define _ECCP2AS_CCP2ASE_MASK                               0x80
#define _ECCP2AS_P2SSBD0_POSN                               0x0
#define _ECCP2AS_P2SSBD0_POSITION                           0x0
#define _ECCP2AS_P2SSBD0_SIZE                               0x1
#define _ECCP2AS_P2SSBD0_LENGTH                             0x1
#define _ECCP2AS_P2SSBD0_MASK                               0x1
#define _ECCP2AS_P2SSBD1_POSN                               0x1
#define _ECCP2AS_P2SSBD1_POSITION                           0x1
#define _ECCP2AS_P2SSBD1_SIZE                               0x1
#define _ECCP2AS_P2SSBD1_LENGTH                             0x1
#define _ECCP2AS_P2SSBD1_MASK                               0x2
#define _ECCP2AS_P2SSAC0_POSN                               0x2
#define _ECCP2AS_P2SSAC0_POSITION                           0x2
#define _ECCP2AS_P2SSAC0_SIZE                               0x1
#define _ECCP2AS_P2SSAC0_LENGTH                             0x1
#define _ECCP2AS_P2SSAC0_MASK                               0x4
#define _ECCP2AS_P2SSAC1_POSN                               0x3
#define _ECCP2AS_P2SSAC1_POSITION                           0x3
#define _ECCP2AS_P2SSAC1_SIZE                               0x1
#define _ECCP2AS_P2SSAC1_LENGTH                             0x1
#define _ECCP2AS_P2SSAC1_MASK                               0x8
#define _ECCP2AS_CCP2AS0_POSN                               0x4
#define _ECCP2AS_CCP2AS0_POSITION                           0x4
#define _ECCP2AS_CCP2AS0_SIZE                               0x1
#define _ECCP2AS_CCP2AS0_LENGTH                             0x1
#define _ECCP2AS_CCP2AS0_MASK                               0x10
#define _ECCP2AS_CCP2AS1_POSN                               0x5
#define _ECCP2AS_CCP2AS1_POSITION                           0x5
#define _ECCP2AS_CCP2AS1_SIZE                               0x1
#define _ECCP2AS_CCP2AS1_LENGTH                             0x1
#define _ECCP2AS_CCP2AS1_MASK                               0x20
#define _ECCP2AS_CCP2AS2_POSN                               0x6
#define _ECCP2AS_CCP2AS2_POSITION                           0x6
#define _ECCP2AS_CCP2AS2_SIZE                               0x1
#define _ECCP2AS_CCP2AS2_LENGTH                             0x1
#define _ECCP2AS_CCP2AS2_MASK                               0x40
#define _ECCP2AS_PSS2BD_POSN                                0x0
#define _ECCP2AS_PSS2BD_POSITION                            0x0
#define _ECCP2AS_PSS2BD_SIZE                                0x2
#define _ECCP2AS_PSS2BD_LENGTH                              0x2
#define _ECCP2AS_PSS2BD_MASK                                0x3
#define _ECCP2AS_PSS2AC_POSN                                0x2
#define _ECCP2AS_PSS2AC_POSITION                            0x2
#define _ECCP2AS_PSS2AC_SIZE                                0x2
#define _ECCP2AS_PSS2AC_LENGTH                              0x2
#define _ECCP2AS_PSS2AC_MASK                                0xC
#define _ECCP2AS_PSS2BD0_POSN                               0x0
#define _ECCP2AS_PSS2BD0_POSITION                           0x0
#define _ECCP2AS_PSS2BD0_SIZE                               0x1
#define _ECCP2AS_PSS2BD0_LENGTH                             0x1
#define _ECCP2AS_PSS2BD0_MASK                               0x1
#define _ECCP2AS_PSS2BD1_POSN                               0x1
#define _ECCP2AS_PSS2BD1_POSITION                           0x1
#define _ECCP2AS_PSS2BD1_SIZE                               0x1
#define _ECCP2AS_PSS2BD1_LENGTH                             0x1
#define _ECCP2AS_PSS2BD1_MASK                               0x2
#define _ECCP2AS_PSS2AC0_POSN                               0x2
#define _ECCP2AS_PSS2AC0_POSITION                           0x2
#define _ECCP2AS_PSS2AC0_SIZE                               0x1
#define _ECCP2AS_PSS2AC0_LENGTH                             0x1
#define _ECCP2AS_PSS2AC0_MASK                               0x4
#define _ECCP2AS_PSS2AC1_POSN                               0x3
#define _ECCP2AS_PSS2AC1_POSITION                           0x3
#define _ECCP2AS_PSS2AC1_SIZE                               0x1
#define _ECCP2AS_PSS2AC1_LENGTH                             0x1
#define _ECCP2AS_PSS2AC1_MASK                               0x8
// alias bitfield definitions
typedef union {
    struct {
        unsigned P2SSBD                 :2;
        unsigned P2SSAC                 :2;
        unsigned CCP2AS                 :3;
        unsigned CCP2ASE                :1;
    };
    struct {
        unsigned P2SSBD0                :1;
        unsigned P2SSBD1                :1;
        unsigned P2SSAC0                :1;
        unsigned P2SSAC1                :1;
        unsigned CCP2AS0                :1;
        unsigned CCP2AS1                :1;
        unsigned CCP2AS2                :1;
    };
    struct {
        unsigned PSS2BD                 :2;
        unsigned PSS2AC                 :2;
    };
    struct {
        unsigned PSS2BD0                :1;
        unsigned PSS2BD1                :1;
        unsigned PSS2AC0                :1;
        unsigned PSS2AC1                :1;
    };
} CCP2ASbits_t;
extern volatile CCP2ASbits_t CCP2ASbits @ 0xF64;
// bitfield macros
#define _CCP2AS_P2SSBD_POSN                                 0x0
#define _CCP2AS_P2SSBD_POSITION                             0x0
#define _CCP2AS_P2SSBD_SIZE                                 0x2
#define _CCP2AS_P2SSBD_LENGTH                               0x2
#define _CCP2AS_P2SSBD_MASK                                 0x3
#define _CCP2AS_P2SSAC_POSN                                 0x2
#define _CCP2AS_P2SSAC_POSITION                             0x2
#define _CCP2AS_P2SSAC_SIZE                                 0x2
#define _CCP2AS_P2SSAC_LENGTH                               0x2
#define _CCP2AS_P2SSAC_MASK                                 0xC
#define _CCP2AS_CCP2AS_POSN                                 0x4
#define _CCP2AS_CCP2AS_POSITION                             0x4
#define _CCP2AS_CCP2AS_SIZE                                 0x3
#define _CCP2AS_CCP2AS_LENGTH                               0x3
#define _CCP2AS_CCP2AS_MASK                                 0x70
#define _CCP2AS_CCP2ASE_POSN                                0x7
#define _CCP2AS_CCP2ASE_POSITION                            0x7
#define _CCP2AS_CCP2ASE_SIZE                                0x1
#define _CCP2AS_CCP2ASE_LENGTH                              0x1
#define _CCP2AS_CCP2ASE_MASK                                0x80
#define _CCP2AS_P2SSBD0_POSN                                0x0
#define _CCP2AS_P2SSBD0_POSITION                            0x0
#define _CCP2AS_P2SSBD0_SIZE                                0x1
#define _CCP2AS_P2SSBD0_LENGTH                              0x1
#define _CCP2AS_P2SSBD0_MASK                                0x1
#define _CCP2AS_P2SSBD1_POSN                                0x1
#define _CCP2AS_P2SSBD1_POSITION                            0x1
#define _CCP2AS_P2SSBD1_SIZE                                0x1
#define _CCP2AS_P2SSBD1_LENGTH                              0x1
#define _CCP2AS_P2SSBD1_MASK                                0x2
#define _CCP2AS_P2SSAC0_POSN                                0x2
#define _CCP2AS_P2SSAC0_POSITION                            0x2
#define _CCP2AS_P2SSAC0_SIZE                                0x1
#define _CCP2AS_P2SSAC0_LENGTH                              0x1
#define _CCP2AS_P2SSAC0_MASK                                0x4
#define _CCP2AS_P2SSAC1_POSN                                0x3
#define _CCP2AS_P2SSAC1_POSITION                            0x3
#define _CCP2AS_P2SSAC1_SIZE                                0x1
#define _CCP2AS_P2SSAC1_LENGTH                              0x1
#define _CCP2AS_P2SSAC1_MASK                                0x8
#define _CCP2AS_CCP2AS0_POSN                                0x4
#define _CCP2AS_CCP2AS0_POSITION                            0x4
#define _CCP2AS_CCP2AS0_SIZE                                0x1
#define _CCP2AS_CCP2AS0_LENGTH                              0x1
#define _CCP2AS_CCP2AS0_MASK                                0x10
#define _CCP2AS_CCP2AS1_POSN                                0x5
#define _CCP2AS_CCP2AS1_POSITION                            0x5
#define _CCP2AS_CCP2AS1_SIZE                                0x1
#define _CCP2AS_CCP2AS1_LENGTH                              0x1
#define _CCP2AS_CCP2AS1_MASK                                0x20
#define _CCP2AS_CCP2AS2_POSN                                0x6
#define _CCP2AS_CCP2AS2_POSITION                            0x6
#define _CCP2AS_CCP2AS2_SIZE                                0x1
#define _CCP2AS_CCP2AS2_LENGTH                              0x1
#define _CCP2AS_CCP2AS2_MASK                                0x40
#define _CCP2AS_PSS2BD_POSN                                 0x0
#define _CCP2AS_PSS2BD_POSITION                             0x0
#define _CCP2AS_PSS2BD_SIZE                                 0x2
#define _CCP2AS_PSS2BD_LENGTH                               0x2
#define _CCP2AS_PSS2BD_MASK                                 0x3
#define _CCP2AS_PSS2AC_POSN                                 0x2
#define _CCP2AS_PSS2AC_POSITION                             0x2
#define _CCP2AS_PSS2AC_SIZE                                 0x2
#define _CCP2AS_PSS2AC_LENGTH                               0x2
#define _CCP2AS_PSS2AC_MASK                                 0xC
#define _CCP2AS_PSS2BD0_POSN                                0x0
#define _CCP2AS_PSS2BD0_POSITION                            0x0
#define _CCP2AS_PSS2BD0_SIZE                                0x1
#define _CCP2AS_PSS2BD0_LENGTH                              0x1
#define _CCP2AS_PSS2BD0_MASK                                0x1
#define _CCP2AS_PSS2BD1_POSN                                0x1
#define _CCP2AS_PSS2BD1_POSITION                            0x1
#define _CCP2AS_PSS2BD1_SIZE                                0x1
#define _CCP2AS_PSS2BD1_LENGTH                              0x1
#define _CCP2AS_PSS2BD1_MASK                                0x2
#define _CCP2AS_PSS2AC0_POSN                                0x2
#define _CCP2AS_PSS2AC0_POSITION                            0x2
#define _CCP2AS_PSS2AC0_SIZE                                0x1
#define _CCP2AS_PSS2AC0_LENGTH                              0x1
#define _CCP2AS_PSS2AC0_MASK                                0x4
#define _CCP2AS_PSS2AC1_POSN                                0x3
#define _CCP2AS_PSS2AC1_POSITION                            0x3
#define _CCP2AS_PSS2AC1_SIZE                                0x1
#define _CCP2AS_PSS2AC1_LENGTH                              0x1
#define _CCP2AS_PSS2AC1_MASK                                0x8

// Register: PWM2CON
extern volatile unsigned char           PWM2CON             @ 0xF65;
#ifndef _LIB_BUILD
asm("PWM2CON equ 0F65h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned P2DC                   :7;
        unsigned P2RSEN                 :1;
    };
    struct {
        unsigned P2DC0                  :1;
        unsigned P2DC1                  :1;
        unsigned P2DC2                  :1;
        unsigned P2DC3                  :1;
        unsigned P2DC4                  :1;
        unsigned P2DC5                  :1;
        unsigned P2DC6                  :1;
    };
} PWM2CONbits_t;
extern volatile PWM2CONbits_t PWM2CONbits @ 0xF65;
// bitfield macros
#define _PWM2CON_P2DC_POSN                                  0x0
#define _PWM2CON_P2DC_POSITION                              0x0
#define _PWM2CON_P2DC_SIZE                                  0x7
#define _PWM2CON_P2DC_LENGTH                                0x7
#define _PWM2CON_P2DC_MASK                                  0x7F
#define _PWM2CON_P2RSEN_POSN                                0x7
#define _PWM2CON_P2RSEN_POSITION                            0x7
#define _PWM2CON_P2RSEN_SIZE                                0x1
#define _PWM2CON_P2RSEN_LENGTH                              0x1
#define _PWM2CON_P2RSEN_MASK                                0x80
#define _PWM2CON_P2DC0_POSN                                 0x0
#define _PWM2CON_P2DC0_POSITION                             0x0
#define _PWM2CON_P2DC0_SIZE                                 0x1
#define _PWM2CON_P2DC0_LENGTH                               0x1
#define _PWM2CON_P2DC0_MASK                                 0x1
#define _PWM2CON_P2DC1_POSN                                 0x1
#define _PWM2CON_P2DC1_POSITION                             0x1
#define _PWM2CON_P2DC1_SIZE                                 0x1
#define _PWM2CON_P2DC1_LENGTH                               0x1
#define _PWM2CON_P2DC1_MASK                                 0x2
#define _PWM2CON_P2DC2_POSN                                 0x2
#define _PWM2CON_P2DC2_POSITION                             0x2
#define _PWM2CON_P2DC2_SIZE                                 0x1
#define _PWM2CON_P2DC2_LENGTH                               0x1
#define _PWM2CON_P2DC2_MASK                                 0x4
#define _PWM2CON_P2DC3_POSN                                 0x3
#define _PWM2CON_P2DC3_POSITION                             0x3
#define _PWM2CON_P2DC3_SIZE                                 0x1
#define _PWM2CON_P2DC3_LENGTH                               0x1
#define _PWM2CON_P2DC3_MASK                                 0x8
#define _PWM2CON_P2DC4_POSN                                 0x4
#define _PWM2CON_P2DC4_POSITION                             0x4
#define _PWM2CON_P2DC4_SIZE                                 0x1
#define _PWM2CON_P2DC4_LENGTH                               0x1
#define _PWM2CON_P2DC4_MASK                                 0x10
#define _PWM2CON_P2DC5_POSN                                 0x5
#define _PWM2CON_P2DC5_POSITION                             0x5
#define _PWM2CON_P2DC5_SIZE                                 0x1
#define _PWM2CON_P2DC5_LENGTH                               0x1
#define _PWM2CON_P2DC5_MASK                                 0x20
#define _PWM2CON_P2DC6_POSN                                 0x6
#define _PWM2CON_P2DC6_POSITION                             0x6
#define _PWM2CON_P2DC6_SIZE                                 0x1
#define _PWM2CON_P2DC6_LENGTH                               0x1
#define _PWM2CON_P2DC6_MASK                                 0x40

// Register: CCP2CON
extern volatile unsigned char           CCP2CON             @ 0xF66;
#ifndef _LIB_BUILD
asm("CCP2CON equ 0F66h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned CCP2M                  :4;
        unsigned DC2B                   :2;
        unsigned P2M                    :2;
    };
    struct {
        unsigned CCP2M0                 :1;
        unsigned CCP2M1                 :1;
        unsigned CCP2M2                 :1;
        unsigned CCP2M3                 :1;
        unsigned DC2B0                  :1;
        unsigned DC2B1                  :1;
        unsigned P2M0                   :1;
        unsigned P2M1                   :1;
    };
} CCP2CONbits_t;
extern volatile CCP2CONbits_t CCP2CONbits @ 0xF66;
// bitfield macros
#define _CCP2CON_CCP2M_POSN                                 0x0
#define _CCP2CON_CCP2M_POSITION                             0x0
#define _CCP2CON_CCP2M_SIZE                                 0x4
#define _CCP2CON_CCP2M_LENGTH                               0x4
#define _CCP2CON_CCP2M_MASK                                 0xF
#define _CCP2CON_DC2B_POSN                                  0x4
#define _CCP2CON_DC2B_POSITION                              0x4
#define _CCP2CON_DC2B_SIZE                                  0x2
#define _CCP2CON_DC2B_LENGTH                                0x2
#define _CCP2CON_DC2B_MASK                                  0x30
#define _CCP2CON_P2M_POSN                                   0x6
#define _CCP2CON_P2M_POSITION                               0x6
#define _CCP2CON_P2M_SIZE                                   0x2
#define _CCP2CON_P2M_LENGTH                                 0x2
#define _CCP2CON_P2M_MASK                                   0xC0
#define _CCP2CON_CCP2M0_POSN                                0x0
#define _CCP2CON_CCP2M0_POSITION                            0x0
#define _CCP2CON_CCP2M0_SIZE                                0x1
#define _CCP2CON_CCP2M0_LENGTH                              0x1
#define _CCP2CON_CCP2M0_MASK                                0x1
#define _CCP2CON_CCP2M1_POSN                                0x1
#define _CCP2CON_CCP2M1_POSITION                            0x1
#define _CCP2CON_CCP2M1_SIZE                                0x1
#define _CCP2CON_CCP2M1_LENGTH                              0x1
#define _CCP2CON_CCP2M1_MASK                                0x2
#define _CCP2CON_CCP2M2_POSN                                0x2
#define _CCP2CON_CCP2M2_POSITION                            0x2
#define _CCP2CON_CCP2M2_SIZE                                0x1
#define _CCP2CON_CCP2M2_LENGTH                              0x1
#define _CCP2CON_CCP2M2_MASK                                0x4
#define _CCP2CON_CCP2M3_POSN                                0x3
#define _CCP2CON_CCP2M3_POSITION                            0x3
#define _CCP2CON_CCP2M3_SIZE                                0x1
#define _CCP2CON_CCP2M3_LENGTH                              0x1
#define _CCP2CON_CCP2M3_MASK                                0x8
#define _CCP2CON_DC2B0_POSN                                 0x4
#define _CCP2CON_DC2B0_POSITION                             0x4
#define _CCP2CON_DC2B0_SIZE                                 0x1
#define _CCP2CON_DC2B0_LENGTH                               0x1
#define _CCP2CON_DC2B0_MASK                                 0x10
#define _CCP2CON_DC2B1_POSN                                 0x5
#define _CCP2CON_DC2B1_POSITION                             0x5
#define _CCP2CON_DC2B1_SIZE                                 0x1
#define _CCP2CON_DC2B1_LENGTH                               0x1
#define _CCP2CON_DC2B1_MASK                                 0x20
#define _CCP2CON_P2M0_POSN                                  0x6
#define _CCP2CON_P2M0_POSITION                              0x6
#define _CCP2CON_P2M0_SIZE                                  0x1
#define _CCP2CON_P2M0_LENGTH                                0x1
#define _CCP2CON_P2M0_MASK                                  0x40
#define _CCP2CON_P2M1_POSN                                  0x7
#define _CCP2CON_P2M1_POSITION                              0x7
#define _CCP2CON_P2M1_SIZE                                  0x1
#define _CCP2CON_P2M1_LENGTH                                0x1
#define _CCP2CON_P2M1_MASK                                  0x80

// Register: CCPR2
extern volatile unsigned short          CCPR2               @ 0xF67;
#ifndef _LIB_BUILD
asm("CCPR2 equ 0F67h");
#endif

// Register: CCPR2L
extern volatile unsigned char           CCPR2L              @ 0xF67;
#ifndef _LIB_BUILD
asm("CCPR2L equ 0F67h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned CCPR2L                 :8;
    };
} CCPR2Lbits_t;
extern volatile CCPR2Lbits_t CCPR2Lbits @ 0xF67;
// bitfield macros
#define _CCPR2L_CCPR2L_POSN                                 0x0
#define _CCPR2L_CCPR2L_POSITION                             0x0
#define _CCPR2L_CCPR2L_SIZE                                 0x8
#define _CCPR2L_CCPR2L_LENGTH                               0x8
#define _CCPR2L_CCPR2L_MASK                                 0xFF

// Register: CCPR2H
extern volatile unsigned char           CCPR2H              @ 0xF68;
#ifndef _LIB_BUILD
asm("CCPR2H equ 0F68h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned CCPR2H                 :8;
    };
} CCPR2Hbits_t;
extern volatile CCPR2Hbits_t CCPR2Hbits @ 0xF68;
// bitfield macros
#define _CCPR2H_CCPR2H_POSN                                 0x0
#define _CCPR2H_CCPR2H_POSITION                             0x0
#define _CCPR2H_CCPR2H_SIZE                                 0x8
#define _CCPR2H_CCPR2H_LENGTH                               0x8
#define _CCPR2H_CCPR2H_MASK                                 0xFF

// Register: SSP2CON3
extern volatile unsigned char           SSP2CON3            @ 0xF69;
#ifndef _LIB_BUILD
asm("SSP2CON3 equ 0F69h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned DHEN                   :1;
        unsigned AHEN                   :1;
        unsigned SBCDE                  :1;
        unsigned SDAHT                  :1;
        unsigned BOEN                   :1;
        unsigned SCIE                   :1;
        unsigned PCIE                   :1;
        unsigned ACKTIM                 :1;
    };
} SSP2CON3bits_t;
extern volatile SSP2CON3bits_t SSP2CON3bits @ 0xF69;
// bitfield macros
#define _SSP2CON3_DHEN_POSN                                 0x0
#define _SSP2CON3_DHEN_POSITION                             0x0
#define _SSP2CON3_DHEN_SIZE                                 0x1
#define _SSP2CON3_DHEN_LENGTH                               0x1
#define _SSP2CON3_DHEN_MASK                                 0x1
#define _SSP2CON3_AHEN_POSN                                 0x1
#define _SSP2CON3_AHEN_POSITION                             0x1
#define _SSP2CON3_AHEN_SIZE                                 0x1
#define _SSP2CON3_AHEN_LENGTH                               0x1
#define _SSP2CON3_AHEN_MASK                                 0x2
#define _SSP2CON3_SBCDE_POSN                                0x2
#define _SSP2CON3_SBCDE_POSITION                            0x2
#define _SSP2CON3_SBCDE_SIZE                                0x1
#define _SSP2CON3_SBCDE_LENGTH                              0x1
#define _SSP2CON3_SBCDE_MASK                                0x4
#define _SSP2CON3_SDAHT_POSN                                0x3
#define _SSP2CON3_SDAHT_POSITION                            0x3
#define _SSP2CON3_SDAHT_SIZE                                0x1
#define _SSP2CON3_SDAHT_LENGTH                              0x1
#define _SSP2CON3_SDAHT_MASK                                0x8
#define _SSP2CON3_BOEN_POSN                                 0x4
#define _SSP2CON3_BOEN_POSITION                             0x4
#define _SSP2CON3_BOEN_SIZE                                 0x1
#define _SSP2CON3_BOEN_LENGTH                               0x1
#define _SSP2CON3_BOEN_MASK                                 0x10
#define _SSP2CON3_SCIE_POSN                                 0x5
#define _SSP2CON3_SCIE_POSITION                             0x5
#define _SSP2CON3_SCIE_SIZE                                 0x1
#define _SSP2CON3_SCIE_LENGTH                               0x1
#define _SSP2CON3_SCIE_MASK                                 0x20
#define _SSP2CON3_PCIE_POSN                                 0x6
#define _SSP2CON3_PCIE_POSITION                             0x6
#define _SSP2CON3_PCIE_SIZE                                 0x1
#define _SSP2CON3_PCIE_LENGTH                               0x1
#define _SSP2CON3_PCIE_MASK                                 0x40
#define _SSP2CON3_ACKTIM_POSN                               0x7
#define _SSP2CON3_ACKTIM_POSITION                           0x7
#define _SSP2CON3_ACKTIM_SIZE                               0x1
#define _SSP2CON3_ACKTIM_LENGTH                             0x1
#define _SSP2CON3_ACKTIM_MASK                               0x80

// Register: SSP2MSK
extern volatile unsigned char           SSP2MSK             @ 0xF6A;
#ifndef _LIB_BUILD
asm("SSP2MSK equ 0F6Ah");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned MSK0                   :1;
        unsigned MSK1                   :1;
        unsigned MSK2                   :1;
        unsigned MSK3                   :1;
        unsigned MSK4                   :1;
        unsigned MSK5                   :1;
        unsigned MSK6                   :1;
        unsigned MSK7                   :1;
    };
    struct {
        unsigned MSK                    :8;
    };
} SSP2MSKbits_t;
extern volatile SSP2MSKbits_t SSP2MSKbits @ 0xF6A;
// bitfield macros
#define _SSP2MSK_MSK0_POSN                                  0x0
#define _SSP2MSK_MSK0_POSITION                              0x0
#define _SSP2MSK_MSK0_SIZE                                  0x1
#define _SSP2MSK_MSK0_LENGTH                                0x1
#define _SSP2MSK_MSK0_MASK                                  0x1
#define _SSP2MSK_MSK1_POSN                                  0x1
#define _SSP2MSK_MSK1_POSITION                              0x1
#define _SSP2MSK_MSK1_SIZE                                  0x1
#define _SSP2MSK_MSK1_LENGTH                                0x1
#define _SSP2MSK_MSK1_MASK                                  0x2
#define _SSP2MSK_MSK2_POSN                                  0x2
#define _SSP2MSK_MSK2_POSITION                              0x2
#define _SSP2MSK_MSK2_SIZE                                  0x1
#define _SSP2MSK_MSK2_LENGTH                                0x1
#define _SSP2MSK_MSK2_MASK                                  0x4
#define _SSP2MSK_MSK3_POSN                                  0x3
#define _SSP2MSK_MSK3_POSITION                              0x3
#define _SSP2MSK_MSK3_SIZE                                  0x1
#define _SSP2MSK_MSK3_LENGTH                                0x1
#define _SSP2MSK_MSK3_MASK                                  0x8
#define _SSP2MSK_MSK4_POSN                                  0x4
#define _SSP2MSK_MSK4_POSITION                              0x4
#define _SSP2MSK_MSK4_SIZE                                  0x1
#define _SSP2MSK_MSK4_LENGTH                                0x1
#define _SSP2MSK_MSK4_MASK                                  0x10
#define _SSP2MSK_MSK5_POSN                                  0x5
#define _SSP2MSK_MSK5_POSITION                              0x5
#define _SSP2MSK_MSK5_SIZE                                  0x1
#define _SSP2MSK_MSK5_LENGTH                                0x1
#define _SSP2MSK_MSK5_MASK                                  0x20
#define _SSP2MSK_MSK6_POSN                                  0x6
#define _SSP2MSK_MSK6_POSITION                              0x6
#define _SSP2MSK_MSK6_SIZE                                  0x1
#define _SSP2MSK_MSK6_LENGTH                                0x1
#define _SSP2MSK_MSK6_MASK                                  0x40
#define _SSP2MSK_MSK7_POSN                                  0x7
#define _SSP2MSK_MSK7_POSITION                              0x7
#define _SSP2MSK_MSK7_SIZE                                  0x1
#define _SSP2MSK_MSK7_LENGTH                                0x1
#define _SSP2MSK_MSK7_MASK                                  0x80
#define _SSP2MSK_MSK_POSN                                   0x0
#define _SSP2MSK_MSK_POSITION                               0x0
#define _SSP2MSK_MSK_SIZE                                   0x8
#define _SSP2MSK_MSK_LENGTH                                 0x8
#define _SSP2MSK_MSK_MASK                                   0xFF

// Register: SSP2CON2
extern volatile unsigned char           SSP2CON2            @ 0xF6B;
#ifndef _LIB_BUILD
asm("SSP2CON2 equ 0F6Bh");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned SEN                    :1;
        unsigned RSEN                   :1;
        unsigned PEN                    :1;
        unsigned RCEN                   :1;
        unsigned ACKEN                  :1;
        unsigned ACKDT                  :1;
        unsigned ACKSTAT                :1;
        unsigned GCEN                   :1;
    };
    struct {
        unsigned SEN2                   :1;
        unsigned ADMSK12                :1;
        unsigned ADMSK22                :1;
        unsigned ADMSK32                :1;
        unsigned ACKEN2                 :1;
        unsigned ACKDT2                 :1;
        unsigned ACKSTAT2               :1;
        unsigned GCEN2                  :1;
    };
    struct {
        unsigned                        :1;
        unsigned RSEN2                  :1;
        unsigned PEN2                   :1;
        unsigned RCEN2                  :1;
        unsigned ADMSK42                :1;
        unsigned ADMSK52                :1;
    };
} SSP2CON2bits_t;
extern volatile SSP2CON2bits_t SSP2CON2bits @ 0xF6B;
// bitfield macros
#define _SSP2CON2_SEN_POSN                                  0x0
#define _SSP2CON2_SEN_POSITION                              0x0
#define _SSP2CON2_SEN_SIZE                                  0x1
#define _SSP2CON2_SEN_LENGTH                                0x1
#define _SSP2CON2_SEN_MASK                                  0x1
#define _SSP2CON2_RSEN_POSN                                 0x1
#define _SSP2CON2_RSEN_POSITION                             0x1
#define _SSP2CON2_RSEN_SIZE                                 0x1
#define _SSP2CON2_RSEN_LENGTH                               0x1
#define _SSP2CON2_RSEN_MASK                                 0x2
#define _SSP2CON2_PEN_POSN                                  0x2
#define _SSP2CON2_PEN_POSITION                              0x2
#define _SSP2CON2_PEN_SIZE                                  0x1
#define _SSP2CON2_PEN_LENGTH                                0x1
#define _SSP2CON2_PEN_MASK                                  0x4
#define _SSP2CON2_RCEN_POSN                                 0x3
#define _SSP2CON2_RCEN_POSITION                             0x3
#define _SSP2CON2_RCEN_SIZE                                 0x1
#define _SSP2CON2_RCEN_LENGTH                               0x1
#define _SSP2CON2_RCEN_MASK                                 0x8
#define _SSP2CON2_ACKEN_POSN                                0x4
#define _SSP2CON2_ACKEN_POSITION                            0x4
#define _SSP2CON2_ACKEN_SIZE                                0x1
#define _SSP2CON2_ACKEN_LENGTH                              0x1
#define _SSP2CON2_ACKEN_MASK                                0x10
#define _SSP2CON2_ACKDT_POSN                                0x5
#define _SSP2CON2_ACKDT_POSITION                            0x5
#define _SSP2CON2_ACKDT_SIZE                                0x1
#define _SSP2CON2_ACKDT_LENGTH                              0x1
#define _SSP2CON2_ACKDT_MASK                                0x20
#define _SSP2CON2_ACKSTAT_POSN                              0x6
#define _SSP2CON2_ACKSTAT_POSITION                          0x6
#define _SSP2CON2_ACKSTAT_SIZE                              0x1
#define _SSP2CON2_ACKSTAT_LENGTH                            0x1
#define _SSP2CON2_ACKSTAT_MASK                              0x40
#define _SSP2CON2_GCEN_POSN                                 0x7
#define _SSP2CON2_GCEN_POSITION                             0x7
#define _SSP2CON2_GCEN_SIZE                                 0x1
#define _SSP2CON2_GCEN_LENGTH                               0x1
#define _SSP2CON2_GCEN_MASK                                 0x80
#define _SSP2CON2_SEN2_POSN                                 0x0
#define _SSP2CON2_SEN2_POSITION                             0x0
#define _SSP2CON2_SEN2_SIZE                                 0x1
#define _SSP2CON2_SEN2_LENGTH                               0x1
#define _SSP2CON2_SEN2_MASK                                 0x1
#define _SSP2CON2_ADMSK12_POSN                              0x1
#define _SSP2CON2_ADMSK12_POSITION                          0x1
#define _SSP2CON2_ADMSK12_SIZE                              0x1
#define _SSP2CON2_ADMSK12_LENGTH                            0x1
#define _SSP2CON2_ADMSK12_MASK                              0x2
#define _SSP2CON2_ADMSK22_POSN                              0x2
#define _SSP2CON2_ADMSK22_POSITION                          0x2
#define _SSP2CON2_ADMSK22_SIZE                              0x1
#define _SSP2CON2_ADMSK22_LENGTH                            0x1
#define _SSP2CON2_ADMSK22_MASK                              0x4
#define _SSP2CON2_ADMSK32_POSN                              0x3
#define _SSP2CON2_ADMSK32_POSITION                          0x3
#define _SSP2CON2_ADMSK32_SIZE                              0x1
#define _SSP2CON2_ADMSK32_LENGTH                            0x1
#define _SSP2CON2_ADMSK32_MASK                              0x8
#define _SSP2CON2_ACKEN2_POSN                               0x4
#define _SSP2CON2_ACKEN2_POSITION                           0x4
#define _SSP2CON2_ACKEN2_SIZE                               0x1
#define _SSP2CON2_ACKEN2_LENGTH                             0x1
#define _SSP2CON2_ACKEN2_MASK                               0x10
#define _SSP2CON2_ACKDT2_POSN                               0x5
#define _SSP2CON2_ACKDT2_POSITION                           0x5
#define _SSP2CON2_ACKDT2_SIZE                               0x1
#define _SSP2CON2_ACKDT2_LENGTH                             0x1
#define _SSP2CON2_ACKDT2_MASK                               0x20
#define _SSP2CON2_ACKSTAT2_POSN                             0x6
#define _SSP2CON2_ACKSTAT2_POSITION                         0x6
#define _SSP2CON2_ACKSTAT2_SIZE                             0x1
#define _SSP2CON2_ACKSTAT2_LENGTH                           0x1
#define _SSP2CON2_ACKSTAT2_MASK                             0x40
#define _SSP2CON2_GCEN2_POSN                                0x7
#define _SSP2CON2_GCEN2_POSITION                            0x7
#define _SSP2CON2_GCEN2_SIZE                                0x1
#define _SSP2CON2_GCEN2_LENGTH                              0x1
#define _SSP2CON2_GCEN2_MASK                                0x80
#define _SSP2CON2_RSEN2_POSN                                0x1
#define _SSP2CON2_RSEN2_POSITION                            0x1
#define _SSP2CON2_RSEN2_SIZE                                0x1
#define _SSP2CON2_RSEN2_LENGTH                              0x1
#define _SSP2CON2_RSEN2_MASK                                0x2
#define _SSP2CON2_PEN2_POSN                                 0x2
#define _SSP2CON2_PEN2_POSITION                             0x2
#define _SSP2CON2_PEN2_SIZE                                 0x1
#define _SSP2CON2_PEN2_LENGTH                               0x1
#define _SSP2CON2_PEN2_MASK                                 0x4
#define _SSP2CON2_RCEN2_POSN                                0x3
#define _SSP2CON2_RCEN2_POSITION                            0x3
#define _SSP2CON2_RCEN2_SIZE                                0x1
#define _SSP2CON2_RCEN2_LENGTH                              0x1
#define _SSP2CON2_RCEN2_MASK                                0x8
#define _SSP2CON2_ADMSK42_POSN                              0x4
#define _SSP2CON2_ADMSK42_POSITION                          0x4
#define _SSP2CON2_ADMSK42_SIZE                              0x1
#define _SSP2CON2_ADMSK42_LENGTH                            0x1
#define _SSP2CON2_ADMSK42_MASK                              0x10
#define _SSP2CON2_ADMSK52_POSN                              0x5
#define _SSP2CON2_ADMSK52_POSITION                          0x5
#define _SSP2CON2_ADMSK52_SIZE                              0x1
#define _SSP2CON2_ADMSK52_LENGTH                            0x1
#define _SSP2CON2_ADMSK52_MASK                              0x20

// Register: SSP2CON1
extern volatile unsigned char           SSP2CON1            @ 0xF6C;
#ifndef _LIB_BUILD
asm("SSP2CON1 equ 0F6Ch");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned SSPM                   :4;
        unsigned CKP                    :1;
        unsigned SSPEN                  :1;
        unsigned SSPOV                  :1;
        unsigned WCOL                   :1;
    };
    struct {
        unsigned SSPM0                  :1;
        unsigned SSPM1                  :1;
        unsigned SSPM2                  :1;
        unsigned SSPM3                  :1;
    };
    struct {
        unsigned SSPM02                 :1;
        unsigned SSPM12                 :1;
        unsigned SSPM22                 :1;
        unsigned SSPM32                 :1;
        unsigned CKP2                   :1;
        unsigned SSPEN2                 :1;
        unsigned SSPOV2                 :1;
        unsigned WCOL2                  :1;
    };
} SSP2CON1bits_t;
extern volatile SSP2CON1bits_t SSP2CON1bits @ 0xF6C;
// bitfield macros
#define _SSP2CON1_SSPM_POSN                                 0x0
#define _SSP2CON1_SSPM_POSITION                             0x0
#define _SSP2CON1_SSPM_SIZE                                 0x4
#define _SSP2CON1_SSPM_LENGTH                               0x4
#define _SSP2CON1_SSPM_MASK                                 0xF
#define _SSP2CON1_CKP_POSN                                  0x4
#define _SSP2CON1_CKP_POSITION                              0x4
#define _SSP2CON1_CKP_SIZE                                  0x1
#define _SSP2CON1_CKP_LENGTH                                0x1
#define _SSP2CON1_CKP_MASK                                  0x10
#define _SSP2CON1_SSPEN_POSN                                0x5
#define _SSP2CON1_SSPEN_POSITION                            0x5
#define _SSP2CON1_SSPEN_SIZE                                0x1
#define _SSP2CON1_SSPEN_LENGTH                              0x1
#define _SSP2CON1_SSPEN_MASK                                0x20
#define _SSP2CON1_SSPOV_POSN                                0x6
#define _SSP2CON1_SSPOV_POSITION                            0x6
#define _SSP2CON1_SSPOV_SIZE                                0x1
#define _SSP2CON1_SSPOV_LENGTH                              0x1
#define _SSP2CON1_SSPOV_MASK                                0x40
#define _SSP2CON1_WCOL_POSN                                 0x7
#define _SSP2CON1_WCOL_POSITION                             0x7
#define _SSP2CON1_WCOL_SIZE                                 0x1
#define _SSP2CON1_WCOL_LENGTH                               0x1
#define _SSP2CON1_WCOL_MASK                                 0x80
#define _SSP2CON1_SSPM0_POSN                                0x0
#define _SSP2CON1_SSPM0_POSITION                            0x0
#define _SSP2CON1_SSPM0_SIZE                                0x1
#define _SSP2CON1_SSPM0_LENGTH                              0x1
#define _SSP2CON1_SSPM0_MASK                                0x1
#define _SSP2CON1_SSPM1_POSN                                0x1
#define _SSP2CON1_SSPM1_POSITION                            0x1
#define _SSP2CON1_SSPM1_SIZE                                0x1
#define _SSP2CON1_SSPM1_LENGTH                              0x1
#define _SSP2CON1_SSPM1_MASK                                0x2
#define _SSP2CON1_SSPM2_POSN                                0x2
#define _SSP2CON1_SSPM2_POSITION                            0x2
#define _SSP2CON1_SSPM2_SIZE                                0x1
#define _SSP2CON1_SSPM2_LENGTH                              0x1
#define _SSP2CON1_SSPM2_MASK                                0x4
#define _SSP2CON1_SSPM3_POSN                                0x3
#define _SSP2CON1_SSPM3_POSITION                            0x3
#define _SSP2CON1_SSPM3_SIZE                                0x1
#define _SSP2CON1_SSPM3_LENGTH                              0x1
#define _SSP2CON1_SSPM3_MASK                                0x8
#define _SSP2CON1_SSPM02_POSN                               0x0
#define _SSP2CON1_SSPM02_POSITION                           0x0
#define _SSP2CON1_SSPM02_SIZE                               0x1
#define _SSP2CON1_SSPM02_LENGTH                             0x1
#define _SSP2CON1_SSPM02_MASK                               0x1
#define _SSP2CON1_SSPM12_POSN                               0x1
#define _SSP2CON1_SSPM12_POSITION                           0x1
#define _SSP2CON1_SSPM12_SIZE                               0x1
#define _SSP2CON1_SSPM12_LENGTH                             0x1
#define _SSP2CON1_SSPM12_MASK                               0x2
#define _SSP2CON1_SSPM22_POSN                               0x2
#define _SSP2CON1_SSPM22_POSITION                           0x2
#define _SSP2CON1_SSPM22_SIZE                               0x1
#define _SSP2CON1_SSPM22_LENGTH                             0x1
#define _SSP2CON1_SSPM22_MASK                               0x4
#define _SSP2CON1_SSPM32_POSN                               0x3
#define _SSP2CON1_SSPM32_POSITION                           0x3
#define _SSP2CON1_SSPM32_SIZE                               0x1
#define _SSP2CON1_SSPM32_LENGTH                             0x1
#define _SSP2CON1_SSPM32_MASK                               0x8
#define _SSP2CON1_CKP2_POSN                                 0x4
#define _SSP2CON1_CKP2_POSITION                             0x4
#define _SSP2CON1_CKP2_SIZE                                 0x1
#define _SSP2CON1_CKP2_LENGTH                               0x1
#define _SSP2CON1_CKP2_MASK                                 0x10
#define _SSP2CON1_SSPEN2_POSN                               0x5
#define _SSP2CON1_SSPEN2_POSITION                           0x5
#define _SSP2CON1_SSPEN2_SIZE                               0x1
#define _SSP2CON1_SSPEN2_LENGTH                             0x1
#define _SSP2CON1_SSPEN2_MASK                               0x20
#define _SSP2CON1_SSPOV2_POSN                               0x6
#define _SSP2CON1_SSPOV2_POSITION                           0x6
#define _SSP2CON1_SSPOV2_SIZE                               0x1
#define _SSP2CON1_SSPOV2_LENGTH                             0x1
#define _SSP2CON1_SSPOV2_MASK                               0x40
#define _SSP2CON1_WCOL2_POSN                                0x7
#define _SSP2CON1_WCOL2_POSITION                            0x7
#define _SSP2CON1_WCOL2_SIZE                                0x1
#define _SSP2CON1_WCOL2_LENGTH                              0x1
#define _SSP2CON1_WCOL2_MASK                                0x80

// Register: SSP2STAT
extern volatile unsigned char           SSP2STAT            @ 0xF6D;
#ifndef _LIB_BUILD
asm("SSP2STAT equ 0F6Dh");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned                        :2;
        unsigned R_NOT_W                :1;
    };
    struct {
        unsigned                        :5;
        unsigned D_NOT_A                :1;
    };
    struct {
        unsigned BF                     :1;
        unsigned UA                     :1;
        unsigned R_nW                   :1;
        unsigned S                      :1;
        unsigned P                      :1;
        unsigned D_nA                   :1;
        unsigned CKE                    :1;
        unsigned SMP                    :1;
    };
    struct {
        unsigned                        :2;
        unsigned R                      :1;
        unsigned                        :2;
        unsigned D                      :1;
    };
    struct {
        unsigned                        :2;
        unsigned W                      :1;
        unsigned                        :2;
        unsigned A                      :1;
    };
    struct {
        unsigned                        :2;
        unsigned nW                     :1;
        unsigned                        :2;
        unsigned nA                     :1;
    };
    struct {
        unsigned                        :2;
        unsigned R_W                    :1;
        unsigned                        :2;
        unsigned D_A                    :1;
    };
    struct {
        unsigned                        :2;
        unsigned NOT_WRITE              :1;
    };
    struct {
        unsigned                        :5;
        unsigned NOT_ADDRESS            :1;
    };
    struct {
        unsigned                        :2;
        unsigned nWRITE                 :1;
        unsigned                        :2;
        unsigned nADDRESS               :1;
    };
    struct {
        unsigned BF2                    :1;
        unsigned UA2                    :1;
        unsigned I2C_READ2              :1;
        unsigned I2C_START2             :1;
        unsigned I2C_STOP2              :1;
        unsigned DA2                    :1;
        unsigned CKE2                   :1;
        unsigned SMP2                   :1;
    };
    struct {
        unsigned                        :2;
        unsigned READ_WRITE2            :1;
        unsigned S2                     :1;
        unsigned P2                     :1;
        unsigned DATA_ADDRESS2          :1;
    };
    struct {
        unsigned                        :2;
        unsigned RW2                    :1;
        unsigned START2                 :1;
        unsigned STOP2                  :1;
        unsigned D_A2                   :1;
    };
    struct {
        unsigned                        :5;
        unsigned D_NOT_A2               :1;
    };
    struct {
        unsigned                        :2;
        unsigned R_W2                   :1;
        unsigned                        :2;
        unsigned D_nA2                  :1;
    };
    struct {
        unsigned                        :2;
        unsigned R_NOT_W2               :1;
    };
    struct {
        unsigned                        :2;
        unsigned R_nW2                  :1;
        unsigned                        :2;
        unsigned I2C_DAT2               :1;
    };
    struct {
        unsigned                        :2;
        unsigned NOT_W2                 :1;
    };
    struct {
        unsigned                        :5;
        unsigned NOT_A2                 :1;
    };
    struct {
        unsigned                        :2;
        unsigned nW2                    :1;
        unsigned                        :2;
        unsigned nA2                    :1;
    };
    struct {
        unsigned                        :2;
        unsigned NOT_WRITE2             :1;
    };
    struct {
        unsigned                        :5;
        unsigned NOT_ADDRESS2           :1;
    };
    struct {
        unsigned                        :2;
        unsigned nWRITE2                :1;
        unsigned                        :2;
        unsigned nADDRESS2              :1;
    };
} SSP2STATbits_t;
extern volatile SSP2STATbits_t SSP2STATbits @ 0xF6D;
// bitfield macros
#define _SSP2STAT_R_NOT_W_POSN                              0x2
#define _SSP2STAT_R_NOT_W_POSITION                          0x2
#define _SSP2STAT_R_NOT_W_SIZE                              0x1
#define _SSP2STAT_R_NOT_W_LENGTH                            0x1
#define _SSP2STAT_R_NOT_W_MASK                              0x4
#define _SSP2STAT_D_NOT_A_POSN                              0x5
#define _SSP2STAT_D_NOT_A_POSITION                          0x5
#define _SSP2STAT_D_NOT_A_SIZE                              0x1
#define _SSP2STAT_D_NOT_A_LENGTH                            0x1
#define _SSP2STAT_D_NOT_A_MASK                              0x20
#define _SSP2STAT_BF_POSN                                   0x0
#define _SSP2STAT_BF_POSITION                               0x0
#define _SSP2STAT_BF_SIZE                                   0x1
#define _SSP2STAT_BF_LENGTH                                 0x1
#define _SSP2STAT_BF_MASK                                   0x1
#define _SSP2STAT_UA_POSN                                   0x1
#define _SSP2STAT_UA_POSITION                               0x1
#define _SSP2STAT_UA_SIZE                                   0x1
#define _SSP2STAT_UA_LENGTH                                 0x1
#define _SSP2STAT_UA_MASK                                   0x2
#define _SSP2STAT_R_nW_POSN                                 0x2
#define _SSP2STAT_R_nW_POSITION                             0x2
#define _SSP2STAT_R_nW_SIZE                                 0x1
#define _SSP2STAT_R_nW_LENGTH                               0x1
#define _SSP2STAT_R_nW_MASK                                 0x4
#define _SSP2STAT_S_POSN                                    0x3
#define _SSP2STAT_S_POSITION                                0x3
#define _SSP2STAT_S_SIZE                                    0x1
#define _SSP2STAT_S_LENGTH                                  0x1
#define _SSP2STAT_S_MASK                                    0x8
#define _SSP2STAT_P_POSN                                    0x4
#define _SSP2STAT_P_POSITION                                0x4
#define _SSP2STAT_P_SIZE                                    0x1
#define _SSP2STAT_P_LENGTH                                  0x1
#define _SSP2STAT_P_MASK                                    0x10
#define _SSP2STAT_D_nA_POSN                                 0x5
#define _SSP2STAT_D_nA_POSITION                             0x5
#define _SSP2STAT_D_nA_SIZE                                 0x1
#define _SSP2STAT_D_nA_LENGTH                               0x1
#define _SSP2STAT_D_nA_MASK                                 0x20
#define _SSP2STAT_CKE_POSN                                  0x6
#define _SSP2STAT_CKE_POSITION                              0x6
#define _SSP2STAT_CKE_SIZE                                  0x1
#define _SSP2STAT_CKE_LENGTH                                0x1
#define _SSP2STAT_CKE_MASK                                  0x40
#define _SSP2STAT_SMP_POSN                                  0x7
#define _SSP2STAT_SMP_POSITION                              0x7
#define _SSP2STAT_SMP_SIZE                                  0x1
#define _SSP2STAT_SMP_LENGTH                                0x1
#define _SSP2STAT_SMP_MASK                                  0x80
#define _SSP2STAT_R_POSN                                    0x2
#define _SSP2STAT_R_POSITION                                0x2
#define _SSP2STAT_R_SIZE                                    0x1
#define _SSP2STAT_R_LENGTH                                  0x1
#define _SSP2STAT_R_MASK                                    0x4
#define _SSP2STAT_D_POSN                                    0x5
#define _SSP2STAT_D_POSITION                                0x5
#define _SSP2STAT_D_SIZE                                    0x1
#define _SSP2STAT_D_LENGTH                                  0x1
#define _SSP2STAT_D_MASK                                    0x20
#define _SSP2STAT_W_POSN                                    0x2
#define _SSP2STAT_W_POSITION                                0x2
#define _SSP2STAT_W_SIZE                                    0x1
#define _SSP2STAT_W_LENGTH                                  0x1
#define _SSP2STAT_W_MASK                                    0x4
#define _SSP2STAT_A_POSN                                    0x5
#define _SSP2STAT_A_POSITION                                0x5
#define _SSP2STAT_A_SIZE                                    0x1
#define _SSP2STAT_A_LENGTH                                  0x1
#define _SSP2STAT_A_MASK                                    0x20
#define _SSP2STAT_nW_POSN                                   0x2
#define _SSP2STAT_nW_POSITION                               0x2
#define _SSP2STAT_nW_SIZE                                   0x1
#define _SSP2STAT_nW_LENGTH                                 0x1
#define _SSP2STAT_nW_MASK                                   0x4
#define _SSP2STAT_nA_POSN                                   0x5
#define _SSP2STAT_nA_POSITION                               0x5
#define _SSP2STAT_nA_SIZE                                   0x1
#define _SSP2STAT_nA_LENGTH                                 0x1
#define _SSP2STAT_nA_MASK                                   0x20
#define _SSP2STAT_R_W_POSN                                  0x2
#define _SSP2STAT_R_W_POSITION                              0x2
#define _SSP2STAT_R_W_SIZE                                  0x1
#define _SSP2STAT_R_W_LENGTH                                0x1
#define _SSP2STAT_R_W_MASK                                  0x4
#define _SSP2STAT_D_A_POSN                                  0x5
#define _SSP2STAT_D_A_POSITION                              0x5
#define _SSP2STAT_D_A_SIZE                                  0x1
#define _SSP2STAT_D_A_LENGTH                                0x1
#define _SSP2STAT_D_A_MASK                                  0x20
#define _SSP2STAT_NOT_WRITE_POSN                            0x2
#define _SSP2STAT_NOT_WRITE_POSITION                        0x2
#define _SSP2STAT_NOT_WRITE_SIZE                            0x1
#define _SSP2STAT_NOT_WRITE_LENGTH                          0x1
#define _SSP2STAT_NOT_WRITE_MASK                            0x4
#define _SSP2STAT_NOT_ADDRESS_POSN                          0x5
#define _SSP2STAT_NOT_ADDRESS_POSITION                      0x5
#define _SSP2STAT_NOT_ADDRESS_SIZE                          0x1
#define _SSP2STAT_NOT_ADDRESS_LENGTH                        0x1
#define _SSP2STAT_NOT_ADDRESS_MASK                          0x20
#define _SSP2STAT_nWRITE_POSN                               0x2
#define _SSP2STAT_nWRITE_POSITION                           0x2
#define _SSP2STAT_nWRITE_SIZE                               0x1
#define _SSP2STAT_nWRITE_LENGTH                             0x1
#define _SSP2STAT_nWRITE_MASK                               0x4
#define _SSP2STAT_nADDRESS_POSN                             0x5
#define _SSP2STAT_nADDRESS_POSITION                         0x5
#define _SSP2STAT_nADDRESS_SIZE                             0x1
#define _SSP2STAT_nADDRESS_LENGTH                           0x1
#define _SSP2STAT_nADDRESS_MASK                             0x20
#define _SSP2STAT_BF2_POSN                                  0x0
#define _SSP2STAT_BF2_POSITION                              0x0
#define _SSP2STAT_BF2_SIZE                                  0x1
#define _SSP2STAT_BF2_LENGTH                                0x1
#define _SSP2STAT_BF2_MASK                                  0x1
#define _SSP2STAT_UA2_POSN                                  0x1
#define _SSP2STAT_UA2_POSITION                              0x1
#define _SSP2STAT_UA2_SIZE                                  0x1
#define _SSP2STAT_UA2_LENGTH                                0x1
#define _SSP2STAT_UA2_MASK                                  0x2
#define _SSP2STAT_I2C_READ2_POSN                            0x2
#define _SSP2STAT_I2C_READ2_POSITION                        0x2
#define _SSP2STAT_I2C_READ2_SIZE                            0x1
#define _SSP2STAT_I2C_READ2_LENGTH                          0x1
#define _SSP2STAT_I2C_READ2_MASK                            0x4
#define _SSP2STAT_I2C_START2_POSN                           0x3
#define _SSP2STAT_I2C_START2_POSITION                       0x3
#define _SSP2STAT_I2C_START2_SIZE                           0x1
#define _SSP2STAT_I2C_START2_LENGTH                         0x1
#define _SSP2STAT_I2C_START2_MASK                           0x8
#define _SSP2STAT_I2C_STOP2_POSN                            0x4
#define _SSP2STAT_I2C_STOP2_POSITION                        0x4
#define _SSP2STAT_I2C_STOP2_SIZE                            0x1
#define _SSP2STAT_I2C_STOP2_LENGTH                          0x1
#define _SSP2STAT_I2C_STOP2_MASK                            0x10
#define _SSP2STAT_DA2_POSN                                  0x5
#define _SSP2STAT_DA2_POSITION                              0x5
#define _SSP2STAT_DA2_SIZE                                  0x1
#define _SSP2STAT_DA2_LENGTH                                0x1
#define _SSP2STAT_DA2_MASK                                  0x20
#define _SSP2STAT_CKE2_POSN                                 0x6
#define _SSP2STAT_CKE2_POSITION                             0x6
#define _SSP2STAT_CKE2_SIZE                                 0x1
#define _SSP2STAT_CKE2_LENGTH                               0x1
#define _SSP2STAT_CKE2_MASK                                 0x40
#define _SSP2STAT_SMP2_POSN                                 0x7
#define _SSP2STAT_SMP2_POSITION                             0x7
#define _SSP2STAT_SMP2_SIZE                                 0x1
#define _SSP2STAT_SMP2_LENGTH                               0x1
#define _SSP2STAT_SMP2_MASK                                 0x80
#define _SSP2STAT_READ_WRITE2_POSN                          0x2
#define _SSP2STAT_READ_WRITE2_POSITION                      0x2
#define _SSP2STAT_READ_WRITE2_SIZE                          0x1
#define _SSP2STAT_READ_WRITE2_LENGTH                        0x1
#define _SSP2STAT_READ_WRITE2_MASK                          0x4
#define _SSP2STAT_S2_POSN                                   0x3
#define _SSP2STAT_S2_POSITION                               0x3
#define _SSP2STAT_S2_SIZE                                   0x1
#define _SSP2STAT_S2_LENGTH                                 0x1
#define _SSP2STAT_S2_MASK                                   0x8
#define _SSP2STAT_P2_POSN                                   0x4
#define _SSP2STAT_P2_POSITION                               0x4
#define _SSP2STAT_P2_SIZE                                   0x1
#define _SSP2STAT_P2_LENGTH                                 0x1
#define _SSP2STAT_P2_MASK                                   0x10
#define _SSP2STAT_DATA_ADDRESS2_POSN                        0x5
#define _SSP2STAT_DATA_ADDRESS2_POSITION                    0x5
#define _SSP2STAT_DATA_ADDRESS2_SIZE                        0x1
#define _SSP2STAT_DATA_ADDRESS2_LENGTH                      0x1
#define _SSP2STAT_DATA_ADDRESS2_MASK                        0x20
#define _SSP2STAT_RW2_POSN                                  0x2
#define _SSP2STAT_RW2_POSITION                              0x2
#define _SSP2STAT_RW2_SIZE                                  0x1
#define _SSP2STAT_RW2_LENGTH                                0x1
#define _SSP2STAT_RW2_MASK                                  0x4
#define _SSP2STAT_START2_POSN                               0x3
#define _SSP2STAT_START2_POSITION                           0x3
#define _SSP2STAT_START2_SIZE                               0x1
#define _SSP2STAT_START2_LENGTH                             0x1
#define _SSP2STAT_START2_MASK                               0x8
#define _SSP2STAT_STOP2_POSN                                0x4
#define _SSP2STAT_STOP2_POSITION                            0x4
#define _SSP2STAT_STOP2_SIZE                                0x1
#define _SSP2STAT_STOP2_LENGTH                              0x1
#define _SSP2STAT_STOP2_MASK                                0x10
#define _SSP2STAT_D_A2_POSN                                 0x5
#define _SSP2STAT_D_A2_POSITION                             0x5
#define _SSP2STAT_D_A2_SIZE                                 0x1
#define _SSP2STAT_D_A2_LENGTH                               0x1
#define _SSP2STAT_D_A2_MASK                                 0x20
#define _SSP2STAT_D_NOT_A2_POSN                             0x5
#define _SSP2STAT_D_NOT_A2_POSITION                         0x5
#define _SSP2STAT_D_NOT_A2_SIZE                             0x1
#define _SSP2STAT_D_NOT_A2_LENGTH                           0x1
#define _SSP2STAT_D_NOT_A2_MASK                             0x20
#define _SSP2STAT_R_W2_POSN                                 0x2
#define _SSP2STAT_R_W2_POSITION                             0x2
#define _SSP2STAT_R_W2_SIZE                                 0x1
#define _SSP2STAT_R_W2_LENGTH                               0x1
#define _SSP2STAT_R_W2_MASK                                 0x4
#define _SSP2STAT_D_nA2_POSN                                0x5
#define _SSP2STAT_D_nA2_POSITION                            0x5
#define _SSP2STAT_D_nA2_SIZE                                0x1
#define _SSP2STAT_D_nA2_LENGTH                              0x1
#define _SSP2STAT_D_nA2_MASK                                0x20
#define _SSP2STAT_R_NOT_W2_POSN                             0x2
#define _SSP2STAT_R_NOT_W2_POSITION                         0x2
#define _SSP2STAT_R_NOT_W2_SIZE                             0x1
#define _SSP2STAT_R_NOT_W2_LENGTH                           0x1
#define _SSP2STAT_R_NOT_W2_MASK                             0x4
#define _SSP2STAT_R_nW2_POSN                                0x2
#define _SSP2STAT_R_nW2_POSITION                            0x2
#define _SSP2STAT_R_nW2_SIZE                                0x1
#define _SSP2STAT_R_nW2_LENGTH                              0x1
#define _SSP2STAT_R_nW2_MASK                                0x4
#define _SSP2STAT_I2C_DAT2_POSN                             0x5
#define _SSP2STAT_I2C_DAT2_POSITION                         0x5
#define _SSP2STAT_I2C_DAT2_SIZE                             0x1
#define _SSP2STAT_I2C_DAT2_LENGTH                           0x1
#define _SSP2STAT_I2C_DAT2_MASK                             0x20
#define _SSP2STAT_NOT_W2_POSN                               0x2
#define _SSP2STAT_NOT_W2_POSITION                           0x2
#define _SSP2STAT_NOT_W2_SIZE                               0x1
#define _SSP2STAT_NOT_W2_LENGTH                             0x1
#define _SSP2STAT_NOT_W2_MASK                               0x4
#define _SSP2STAT_NOT_A2_POSN                               0x5
#define _SSP2STAT_NOT_A2_POSITION                           0x5
#define _SSP2STAT_NOT_A2_SIZE                               0x1
#define _SSP2STAT_NOT_A2_LENGTH                             0x1
#define _SSP2STAT_NOT_A2_MASK                               0x20
#define _SSP2STAT_nW2_POSN                                  0x2
#define _SSP2STAT_nW2_POSITION                              0x2
#define _SSP2STAT_nW2_SIZE                                  0x1
#define _SSP2STAT_nW2_LENGTH                                0x1
#define _SSP2STAT_nW2_MASK                                  0x4
#define _SSP2STAT_nA2_POSN                                  0x5
#define _SSP2STAT_nA2_POSITION                              0x5
#define _SSP2STAT_nA2_SIZE                                  0x1
#define _SSP2STAT_nA2_LENGTH                                0x1
#define _SSP2STAT_nA2_MASK                                  0x20
#define _SSP2STAT_NOT_WRITE2_POSN                           0x2
#define _SSP2STAT_NOT_WRITE2_POSITION                       0x2
#define _SSP2STAT_NOT_WRITE2_SIZE                           0x1
#define _SSP2STAT_NOT_WRITE2_LENGTH                         0x1
#define _SSP2STAT_NOT_WRITE2_MASK                           0x4
#define _SSP2STAT_NOT_ADDRESS2_POSN                         0x5
#define _SSP2STAT_NOT_ADDRESS2_POSITION                     0x5
#define _SSP2STAT_NOT_ADDRESS2_SIZE                         0x1
#define _SSP2STAT_NOT_ADDRESS2_LENGTH                       0x1
#define _SSP2STAT_NOT_ADDRESS2_MASK                         0x20
#define _SSP2STAT_nWRITE2_POSN                              0x2
#define _SSP2STAT_nWRITE2_POSITION                          0x2
#define _SSP2STAT_nWRITE2_SIZE                              0x1
#define _SSP2STAT_nWRITE2_LENGTH                            0x1
#define _SSP2STAT_nWRITE2_MASK                              0x4
#define _SSP2STAT_nADDRESS2_POSN                            0x5
#define _SSP2STAT_nADDRESS2_POSITION                        0x5
#define _SSP2STAT_nADDRESS2_SIZE                            0x1
#define _SSP2STAT_nADDRESS2_LENGTH                          0x1
#define _SSP2STAT_nADDRESS2_MASK                            0x20

// Register: SSP2ADD
extern volatile unsigned char           SSP2ADD             @ 0xF6E;
#ifndef _LIB_BUILD
asm("SSP2ADD equ 0F6Eh");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned SSPADD                 :8;
    };
    struct {
        unsigned MSK02                  :1;
        unsigned MSK12                  :1;
        unsigned MSK22                  :1;
        unsigned MSK32                  :1;
        unsigned MSK42                  :1;
        unsigned MSK52                  :1;
        unsigned MSK62                  :1;
        unsigned MSK72                  :1;
    };
} SSP2ADDbits_t;
extern volatile SSP2ADDbits_t SSP2ADDbits @ 0xF6E;
// bitfield macros
#define _SSP2ADD_SSPADD_POSN                                0x0
#define _SSP2ADD_SSPADD_POSITION                            0x0
#define _SSP2ADD_SSPADD_SIZE                                0x8
#define _SSP2ADD_SSPADD_LENGTH                              0x8
#define _SSP2ADD_SSPADD_MASK                                0xFF
#define _SSP2ADD_MSK02_POSN                                 0x0
#define _SSP2ADD_MSK02_POSITION                             0x0
#define _SSP2ADD_MSK02_SIZE                                 0x1
#define _SSP2ADD_MSK02_LENGTH                               0x1
#define _SSP2ADD_MSK02_MASK                                 0x1
#define _SSP2ADD_MSK12_POSN                                 0x1
#define _SSP2ADD_MSK12_POSITION                             0x1
#define _SSP2ADD_MSK12_SIZE                                 0x1
#define _SSP2ADD_MSK12_LENGTH                               0x1
#define _SSP2ADD_MSK12_MASK                                 0x2
#define _SSP2ADD_MSK22_POSN                                 0x2
#define _SSP2ADD_MSK22_POSITION                             0x2
#define _SSP2ADD_MSK22_SIZE                                 0x1
#define _SSP2ADD_MSK22_LENGTH                               0x1
#define _SSP2ADD_MSK22_MASK                                 0x4
#define _SSP2ADD_MSK32_POSN                                 0x3
#define _SSP2ADD_MSK32_POSITION                             0x3
#define _SSP2ADD_MSK32_SIZE                                 0x1
#define _SSP2ADD_MSK32_LENGTH                               0x1
#define _SSP2ADD_MSK32_MASK                                 0x8
#define _SSP2ADD_MSK42_POSN                                 0x4
#define _SSP2ADD_MSK42_POSITION                             0x4
#define _SSP2ADD_MSK42_SIZE                                 0x1
#define _SSP2ADD_MSK42_LENGTH                               0x1
#define _SSP2ADD_MSK42_MASK                                 0x10
#define _SSP2ADD_MSK52_POSN                                 0x5
#define _SSP2ADD_MSK52_POSITION                             0x5
#define _SSP2ADD_MSK52_SIZE                                 0x1
#define _SSP2ADD_MSK52_LENGTH                               0x1
#define _SSP2ADD_MSK52_MASK                                 0x20
#define _SSP2ADD_MSK62_POSN                                 0x6
#define _SSP2ADD_MSK62_POSITION                             0x6
#define _SSP2ADD_MSK62_SIZE                                 0x1
#define _SSP2ADD_MSK62_LENGTH                               0x1
#define _SSP2ADD_MSK62_MASK                                 0x40
#define _SSP2ADD_MSK72_POSN                                 0x7
#define _SSP2ADD_MSK72_POSITION                             0x7
#define _SSP2ADD_MSK72_SIZE                                 0x1
#define _SSP2ADD_MSK72_LENGTH                               0x1
#define _SSP2ADD_MSK72_MASK                                 0x80

// Register: SSP2BUF
extern volatile unsigned char           SSP2BUF             @ 0xF6F;
#ifndef _LIB_BUILD
asm("SSP2BUF equ 0F6Fh");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned SSPBUF                 :8;
    };
} SSP2BUFbits_t;
extern volatile SSP2BUFbits_t SSP2BUFbits @ 0xF6F;
// bitfield macros
#define _SSP2BUF_SSPBUF_POSN                                0x0
#define _SSP2BUF_SSPBUF_POSITION                            0x0
#define _SSP2BUF_SSPBUF_SIZE                                0x8
#define _SSP2BUF_SSPBUF_LENGTH                              0x8
#define _SSP2BUF_SSPBUF_MASK                                0xFF

// Register: BAUDCON2
extern volatile unsigned char           BAUDCON2            @ 0xF70;
#ifndef _LIB_BUILD
asm("BAUDCON2 equ 0F70h");
#endif
// aliases
extern volatile unsigned char           BAUD2CON            @ 0xF70;
#ifndef _LIB_BUILD
asm("BAUD2CON equ 0F70h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned ABDEN                  :1;
        unsigned WUE                    :1;
        unsigned                        :1;
        unsigned BRG16                  :1;
        unsigned CKTXP                  :1;
        unsigned DTRXP                  :1;
        unsigned RCIDL                  :1;
        unsigned ABDOVF                 :1;
    };
    struct {
        unsigned                        :4;
        unsigned SCKP                   :1;
    };
    struct {
        unsigned ABDEN2                 :1;
        unsigned WUE2                   :1;
        unsigned                        :1;
        unsigned BRG162                 :1;
        unsigned SCKP2                  :1;
        unsigned DTRXP2                 :1;
        unsigned RCIDL2                 :1;
        unsigned ABDOVF2                :1;
    };
    struct {
        unsigned                        :4;
        unsigned TXCKP2                 :1;
        unsigned RXDTP2                 :1;
        unsigned RCMT2                  :1;
    };
} BAUDCON2bits_t;
extern volatile BAUDCON2bits_t BAUDCON2bits @ 0xF70;
// bitfield macros
#define _BAUDCON2_ABDEN_POSN                                0x0
#define _BAUDCON2_ABDEN_POSITION                            0x0
#define _BAUDCON2_ABDEN_SIZE                                0x1
#define _BAUDCON2_ABDEN_LENGTH                              0x1
#define _BAUDCON2_ABDEN_MASK                                0x1
#define _BAUDCON2_WUE_POSN                                  0x1
#define _BAUDCON2_WUE_POSITION                              0x1
#define _BAUDCON2_WUE_SIZE                                  0x1
#define _BAUDCON2_WUE_LENGTH                                0x1
#define _BAUDCON2_WUE_MASK                                  0x2
#define _BAUDCON2_BRG16_POSN                                0x3
#define _BAUDCON2_BRG16_POSITION                            0x3
#define _BAUDCON2_BRG16_SIZE                                0x1
#define _BAUDCON2_BRG16_LENGTH                              0x1
#define _BAUDCON2_BRG16_MASK                                0x8
#define _BAUDCON2_CKTXP_POSN                                0x4
#define _BAUDCON2_CKTXP_POSITION                            0x4
#define _BAUDCON2_CKTXP_SIZE                                0x1
#define _BAUDCON2_CKTXP_LENGTH                              0x1
#define _BAUDCON2_CKTXP_MASK                                0x10
#define _BAUDCON2_DTRXP_POSN                                0x5
#define _BAUDCON2_DTRXP_POSITION                            0x5
#define _BAUDCON2_DTRXP_SIZE                                0x1
#define _BAUDCON2_DTRXP_LENGTH                              0x1
#define _BAUDCON2_DTRXP_MASK                                0x20
#define _BAUDCON2_RCIDL_POSN                                0x6
#define _BAUDCON2_RCIDL_POSITION                            0x6
#define _BAUDCON2_RCIDL_SIZE                                0x1
#define _BAUDCON2_RCIDL_LENGTH                              0x1
#define _BAUDCON2_RCIDL_MASK                                0x40
#define _BAUDCON2_ABDOVF_POSN                               0x7
#define _BAUDCON2_ABDOVF_POSITION                           0x7
#define _BAUDCON2_ABDOVF_SIZE                               0x1
#define _BAUDCON2_ABDOVF_LENGTH                             0x1
#define _BAUDCON2_ABDOVF_MASK                               0x80
#define _BAUDCON2_SCKP_POSN                                 0x4
#define _BAUDCON2_SCKP_POSITION                             0x4
#define _BAUDCON2_SCKP_SIZE                                 0x1
#define _BAUDCON2_SCKP_LENGTH                               0x1
#define _BAUDCON2_SCKP_MASK                                 0x10
#define _BAUDCON2_ABDEN2_POSN                               0x0
#define _BAUDCON2_ABDEN2_POSITION                           0x0
#define _BAUDCON2_ABDEN2_SIZE                               0x1
#define _BAUDCON2_ABDEN2_LENGTH                             0x1
#define _BAUDCON2_ABDEN2_MASK                               0x1
#define _BAUDCON2_WUE2_POSN                                 0x1
#define _BAUDCON2_WUE2_POSITION                             0x1
#define _BAUDCON2_WUE2_SIZE                                 0x1
#define _BAUDCON2_WUE2_LENGTH                               0x1
#define _BAUDCON2_WUE2_MASK                                 0x2
#define _BAUDCON2_BRG162_POSN                               0x3
#define _BAUDCON2_BRG162_POSITION                           0x3
#define _BAUDCON2_BRG162_SIZE                               0x1
#define _BAUDCON2_BRG162_LENGTH                             0x1
#define _BAUDCON2_BRG162_MASK                               0x8
#define _BAUDCON2_SCKP2_POSN                                0x4
#define _BAUDCON2_SCKP2_POSITION                            0x4
#define _BAUDCON2_SCKP2_SIZE                                0x1
#define _BAUDCON2_SCKP2_LENGTH                              0x1
#define _BAUDCON2_SCKP2_MASK                                0x10
#define _BAUDCON2_DTRXP2_POSN                               0x5
#define _BAUDCON2_DTRXP2_POSITION                           0x5
#define _BAUDCON2_DTRXP2_SIZE                               0x1
#define _BAUDCON2_DTRXP2_LENGTH                             0x1
#define _BAUDCON2_DTRXP2_MASK                               0x20
#define _BAUDCON2_RCIDL2_POSN                               0x6
#define _BAUDCON2_RCIDL2_POSITION                           0x6
#define _BAUDCON2_RCIDL2_SIZE                               0x1
#define _BAUDCON2_RCIDL2_LENGTH                             0x1
#define _BAUDCON2_RCIDL2_MASK                               0x40
#define _BAUDCON2_ABDOVF2_POSN                              0x7
#define _BAUDCON2_ABDOVF2_POSITION                          0x7
#define _BAUDCON2_ABDOVF2_SIZE                              0x1
#define _BAUDCON2_ABDOVF2_LENGTH                            0x1
#define _BAUDCON2_ABDOVF2_MASK                              0x80
#define _BAUDCON2_TXCKP2_POSN                               0x4
#define _BAUDCON2_TXCKP2_POSITION                           0x4
#define _BAUDCON2_TXCKP2_SIZE                               0x1
#define _BAUDCON2_TXCKP2_LENGTH                             0x1
#define _BAUDCON2_TXCKP2_MASK                               0x10
#define _BAUDCON2_RXDTP2_POSN                               0x5
#define _BAUDCON2_RXDTP2_POSITION                           0x5
#define _BAUDCON2_RXDTP2_SIZE                               0x1
#define _BAUDCON2_RXDTP2_LENGTH                             0x1
#define _BAUDCON2_RXDTP2_MASK                               0x20
#define _BAUDCON2_RCMT2_POSN                                0x6
#define _BAUDCON2_RCMT2_POSITION                            0x6
#define _BAUDCON2_RCMT2_SIZE                                0x1
#define _BAUDCON2_RCMT2_LENGTH                              0x1
#define _BAUDCON2_RCMT2_MASK                                0x40
// alias bitfield definitions
typedef union {
    struct {
        unsigned ABDEN                  :1;
        unsigned WUE                    :1;
        unsigned                        :1;
        unsigned BRG16                  :1;
        unsigned CKTXP                  :1;
        unsigned DTRXP                  :1;
        unsigned RCIDL                  :1;
        unsigned ABDOVF                 :1;
    };
    struct {
        unsigned                        :4;
        unsigned SCKP                   :1;
    };
    struct {
        unsigned ABDEN2                 :1;
        unsigned WUE2                   :1;
        unsigned                        :1;
        unsigned BRG162                 :1;
        unsigned SCKP2                  :1;
        unsigned DTRXP2                 :1;
        unsigned RCIDL2                 :1;
        unsigned ABDOVF2                :1;
    };
    struct {
        unsigned                        :4;
        unsigned TXCKP2                 :1;
        unsigned RXDTP2                 :1;
        unsigned RCMT2                  :1;
    };
} BAUD2CONbits_t;
extern volatile BAUD2CONbits_t BAUD2CONbits @ 0xF70;
// bitfield macros
#define _BAUD2CON_ABDEN_POSN                                0x0
#define _BAUD2CON_ABDEN_POSITION                            0x0
#define _BAUD2CON_ABDEN_SIZE                                0x1
#define _BAUD2CON_ABDEN_LENGTH                              0x1
#define _BAUD2CON_ABDEN_MASK                                0x1
#define _BAUD2CON_WUE_POSN                                  0x1
#define _BAUD2CON_WUE_POSITION                              0x1
#define _BAUD2CON_WUE_SIZE                                  0x1
#define _BAUD2CON_WUE_LENGTH                                0x1
#define _BAUD2CON_WUE_MASK                                  0x2
#define _BAUD2CON_BRG16_POSN                                0x3
#define _BAUD2CON_BRG16_POSITION                            0x3
#define _BAUD2CON_BRG16_SIZE                                0x1
#define _BAUD2CON_BRG16_LENGTH                              0x1
#define _BAUD2CON_BRG16_MASK                                0x8
#define _BAUD2CON_CKTXP_POSN                                0x4
#define _BAUD2CON_CKTXP_POSITION                            0x4
#define _BAUD2CON_CKTXP_SIZE                                0x1
#define _BAUD2CON_CKTXP_LENGTH                              0x1
#define _BAUD2CON_CKTXP_MASK                                0x10
#define _BAUD2CON_DTRXP_POSN                                0x5
#define _BAUD2CON_DTRXP_POSITION                            0x5
#define _BAUD2CON_DTRXP_SIZE                                0x1
#define _BAUD2CON_DTRXP_LENGTH                              0x1
#define _BAUD2CON_DTRXP_MASK                                0x20
#define _BAUD2CON_RCIDL_POSN                                0x6
#define _BAUD2CON_RCIDL_POSITION                            0x6
#define _BAUD2CON_RCIDL_SIZE                                0x1
#define _BAUD2CON_RCIDL_LENGTH                              0x1
#define _BAUD2CON_RCIDL_MASK                                0x40
#define _BAUD2CON_ABDOVF_POSN                               0x7
#define _BAUD2CON_ABDOVF_POSITION                           0x7
#define _BAUD2CON_ABDOVF_SIZE                               0x1
#define _BAUD2CON_ABDOVF_LENGTH                             0x1
#define _BAUD2CON_ABDOVF_MASK                               0x80
#define _BAUD2CON_SCKP_POSN                                 0x4
#define _BAUD2CON_SCKP_POSITION                             0x4
#define _BAUD2CON_SCKP_SIZE                                 0x1
#define _BAUD2CON_SCKP_LENGTH                               0x1
#define _BAUD2CON_SCKP_MASK                                 0x10
#define _BAUD2CON_ABDEN2_POSN                               0x0
#define _BAUD2CON_ABDEN2_POSITION                           0x0
#define _BAUD2CON_ABDEN2_SIZE                               0x1
#define _BAUD2CON_ABDEN2_LENGTH                             0x1
#define _BAUD2CON_ABDEN2_MASK                               0x1
#define _BAUD2CON_WUE2_POSN                                 0x1
#define _BAUD2CON_WUE2_POSITION                             0x1
#define _BAUD2CON_WUE2_SIZE                                 0x1
#define _BAUD2CON_WUE2_LENGTH                               0x1
#define _BAUD2CON_WUE2_MASK                                 0x2
#define _BAUD2CON_BRG162_POSN                               0x3
#define _BAUD2CON_BRG162_POSITION                           0x3
#define _BAUD2CON_BRG162_SIZE                               0x1
#define _BAUD2CON_BRG162_LENGTH                             0x1
#define _BAUD2CON_BRG162_MASK                               0x8
#define _BAUD2CON_SCKP2_POSN                                0x4
#define _BAUD2CON_SCKP2_POSITION                            0x4
#define _BAUD2CON_SCKP2_SIZE                                0x1
#define _BAUD2CON_SCKP2_LENGTH                              0x1
#define _BAUD2CON_SCKP2_MASK                                0x10
#define _BAUD2CON_DTRXP2_POSN                               0x5
#define _BAUD2CON_DTRXP2_POSITION                           0x5
#define _BAUD2CON_DTRXP2_SIZE                               0x1
#define _BAUD2CON_DTRXP2_LENGTH                             0x1
#define _BAUD2CON_DTRXP2_MASK                               0x20
#define _BAUD2CON_RCIDL2_POSN                               0x6
#define _BAUD2CON_RCIDL2_POSITION                           0x6
#define _BAUD2CON_RCIDL2_SIZE                               0x1
#define _BAUD2CON_RCIDL2_LENGTH                             0x1
#define _BAUD2CON_RCIDL2_MASK                               0x40
#define _BAUD2CON_ABDOVF2_POSN                              0x7
#define _BAUD2CON_ABDOVF2_POSITION                          0x7
#define _BAUD2CON_ABDOVF2_SIZE                              0x1
#define _BAUD2CON_ABDOVF2_LENGTH                            0x1
#define _BAUD2CON_ABDOVF2_MASK                              0x80
#define _BAUD2CON_TXCKP2_POSN                               0x4
#define _BAUD2CON_TXCKP2_POSITION                           0x4
#define _BAUD2CON_TXCKP2_SIZE                               0x1
#define _BAUD2CON_TXCKP2_LENGTH                             0x1
#define _BAUD2CON_TXCKP2_MASK                               0x10
#define _BAUD2CON_RXDTP2_POSN                               0x5
#define _BAUD2CON_RXDTP2_POSITION                           0x5
#define _BAUD2CON_RXDTP2_SIZE                               0x1
#define _BAUD2CON_RXDTP2_LENGTH                             0x1
#define _BAUD2CON_RXDTP2_MASK                               0x20
#define _BAUD2CON_RCMT2_POSN                                0x6
#define _BAUD2CON_RCMT2_POSITION                            0x6
#define _BAUD2CON_RCMT2_SIZE                                0x1
#define _BAUD2CON_RCMT2_LENGTH                              0x1
#define _BAUD2CON_RCMT2_MASK                                0x40

// Register: RCSTA2
extern volatile unsigned char           RCSTA2              @ 0xF71;
#ifndef _LIB_BUILD
asm("RCSTA2 equ 0F71h");
#endif
// aliases
extern volatile unsigned char           RC2STA              @ 0xF71;
#ifndef _LIB_BUILD
asm("RC2STA equ 0F71h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned RX9D                   :1;
        unsigned OERR                   :1;
        unsigned FERR                   :1;
        unsigned ADDEN                  :1;
        unsigned CREN                   :1;
        unsigned SREN                   :1;
        unsigned RX9                    :1;
        unsigned SPEN                   :1;
    };
    struct {
        unsigned                        :3;
        unsigned ADEN                   :1;
    };
    struct {
        unsigned RX9D2                  :1;
        unsigned OERR2                  :1;
        unsigned FERR2                  :1;
        unsigned ADDEN2                 :1;
        unsigned CREN2                  :1;
        unsigned SREN2                  :1;
        unsigned RX92                   :1;
        unsigned SPEN2                  :1;
    };
    struct {
        unsigned RCD82                  :1;
        unsigned                        :5;
        unsigned RC8_92                 :1;
    };
    struct {
        unsigned                        :6;
        unsigned RC92                   :1;
    };
} RCSTA2bits_t;
extern volatile RCSTA2bits_t RCSTA2bits @ 0xF71;
// bitfield macros
#define _RCSTA2_RX9D_POSN                                   0x0
#define _RCSTA2_RX9D_POSITION                               0x0
#define _RCSTA2_RX9D_SIZE                                   0x1
#define _RCSTA2_RX9D_LENGTH                                 0x1
#define _RCSTA2_RX9D_MASK                                   0x1
#define _RCSTA2_OERR_POSN                                   0x1
#define _RCSTA2_OERR_POSITION                               0x1
#define _RCSTA2_OERR_SIZE                                   0x1
#define _RCSTA2_OERR_LENGTH                                 0x1
#define _RCSTA2_OERR_MASK                                   0x2
#define _RCSTA2_FERR_POSN                                   0x2
#define _RCSTA2_FERR_POSITION                               0x2
#define _RCSTA2_FERR_SIZE                                   0x1
#define _RCSTA2_FERR_LENGTH                                 0x1
#define _RCSTA2_FERR_MASK                                   0x4
#define _RCSTA2_ADDEN_POSN                                  0x3
#define _RCSTA2_ADDEN_POSITION                              0x3
#define _RCSTA2_ADDEN_SIZE                                  0x1
#define _RCSTA2_ADDEN_LENGTH                                0x1
#define _RCSTA2_ADDEN_MASK                                  0x8
#define _RCSTA2_CREN_POSN                                   0x4
#define _RCSTA2_CREN_POSITION                               0x4
#define _RCSTA2_CREN_SIZE                                   0x1
#define _RCSTA2_CREN_LENGTH                                 0x1
#define _RCSTA2_CREN_MASK                                   0x10
#define _RCSTA2_SREN_POSN                                   0x5
#define _RCSTA2_SREN_POSITION                               0x5
#define _RCSTA2_SREN_SIZE                                   0x1
#define _RCSTA2_SREN_LENGTH                                 0x1
#define _RCSTA2_SREN_MASK                                   0x20
#define _RCSTA2_RX9_POSN                                    0x6
#define _RCSTA2_RX9_POSITION                                0x6
#define _RCSTA2_RX9_SIZE                                    0x1
#define _RCSTA2_RX9_LENGTH                                  0x1
#define _RCSTA2_RX9_MASK                                    0x40
#define _RCSTA2_SPEN_POSN                                   0x7
#define _RCSTA2_SPEN_POSITION                               0x7
#define _RCSTA2_SPEN_SIZE                                   0x1
#define _RCSTA2_SPEN_LENGTH                                 0x1
#define _RCSTA2_SPEN_MASK                                   0x80
#define _RCSTA2_ADEN_POSN                                   0x3
#define _RCSTA2_ADEN_POSITION                               0x3
#define _RCSTA2_ADEN_SIZE                                   0x1
#define _RCSTA2_ADEN_LENGTH                                 0x1
#define _RCSTA2_ADEN_MASK                                   0x8
#define _RCSTA2_RX9D2_POSN                                  0x0
#define _RCSTA2_RX9D2_POSITION                              0x0
#define _RCSTA2_RX9D2_SIZE                                  0x1
#define _RCSTA2_RX9D2_LENGTH                                0x1
#define _RCSTA2_RX9D2_MASK                                  0x1
#define _RCSTA2_OERR2_POSN                                  0x1
#define _RCSTA2_OERR2_POSITION                              0x1
#define _RCSTA2_OERR2_SIZE                                  0x1
#define _RCSTA2_OERR2_LENGTH                                0x1
#define _RCSTA2_OERR2_MASK                                  0x2
#define _RCSTA2_FERR2_POSN                                  0x2
#define _RCSTA2_FERR2_POSITION                              0x2
#define _RCSTA2_FERR2_SIZE                                  0x1
#define _RCSTA2_FERR2_LENGTH                                0x1
#define _RCSTA2_FERR2_MASK                                  0x4
#define _RCSTA2_ADDEN2_POSN                                 0x3
#define _RCSTA2_ADDEN2_POSITION                             0x3
#define _RCSTA2_ADDEN2_SIZE                                 0x1
#define _RCSTA2_ADDEN2_LENGTH                               0x1
#define _RCSTA2_ADDEN2_MASK                                 0x8
#define _RCSTA2_CREN2_POSN                                  0x4
#define _RCSTA2_CREN2_POSITION                              0x4
#define _RCSTA2_CREN2_SIZE                                  0x1
#define _RCSTA2_CREN2_LENGTH                                0x1
#define _RCSTA2_CREN2_MASK                                  0x10
#define _RCSTA2_SREN2_POSN                                  0x5
#define _RCSTA2_SREN2_POSITION                              0x5
#define _RCSTA2_SREN2_SIZE                                  0x1
#define _RCSTA2_SREN2_LENGTH                                0x1
#define _RCSTA2_SREN2_MASK                                  0x20
#define _RCSTA2_RX92_POSN                                   0x6
#define _RCSTA2_RX92_POSITION                               0x6
#define _RCSTA2_RX92_SIZE                                   0x1
#define _RCSTA2_RX92_LENGTH                                 0x1
#define _RCSTA2_RX92_MASK                                   0x40
#define _RCSTA2_SPEN2_POSN                                  0x7
#define _RCSTA2_SPEN2_POSITION                              0x7
#define _RCSTA2_SPEN2_SIZE                                  0x1
#define _RCSTA2_SPEN2_LENGTH                                0x1
#define _RCSTA2_SPEN2_MASK                                  0x80
#define _RCSTA2_RCD82_POSN                                  0x0
#define _RCSTA2_RCD82_POSITION                              0x0
#define _RCSTA2_RCD82_SIZE                                  0x1
#define _RCSTA2_RCD82_LENGTH                                0x1
#define _RCSTA2_RCD82_MASK                                  0x1
#define _RCSTA2_RC8_92_POSN                                 0x6
#define _RCSTA2_RC8_92_POSITION                             0x6
#define _RCSTA2_RC8_92_SIZE                                 0x1
#define _RCSTA2_RC8_92_LENGTH                               0x1
#define _RCSTA2_RC8_92_MASK                                 0x40
#define _RCSTA2_RC92_POSN                                   0x6
#define _RCSTA2_RC92_POSITION                               0x6
#define _RCSTA2_RC92_SIZE                                   0x1
#define _RCSTA2_RC92_LENGTH                                 0x1
#define _RCSTA2_RC92_MASK                                   0x40
// alias bitfield definitions
typedef union {
    struct {
        unsigned RX9D                   :1;
        unsigned OERR                   :1;
        unsigned FERR                   :1;
        unsigned ADDEN                  :1;
        unsigned CREN                   :1;
        unsigned SREN                   :1;
        unsigned RX9                    :1;
        unsigned SPEN                   :1;
    };
    struct {
        unsigned                        :3;
        unsigned ADEN                   :1;
    };
    struct {
        unsigned RX9D2                  :1;
        unsigned OERR2                  :1;
        unsigned FERR2                  :1;
        unsigned ADDEN2                 :1;
        unsigned CREN2                  :1;
        unsigned SREN2                  :1;
        unsigned RX92                   :1;
        unsigned SPEN2                  :1;
    };
    struct {
        unsigned RCD82                  :1;
        unsigned                        :5;
        unsigned RC8_92                 :1;
    };
    struct {
        unsigned                        :6;
        unsigned RC92                   :1;
    };
} RC2STAbits_t;
extern volatile RC2STAbits_t RC2STAbits @ 0xF71;
// bitfield macros
#define _RC2STA_RX9D_POSN                                   0x0
#define _RC2STA_RX9D_POSITION                               0x0
#define _RC2STA_RX9D_SIZE                                   0x1
#define _RC2STA_RX9D_LENGTH                                 0x1
#define _RC2STA_RX9D_MASK                                   0x1
#define _RC2STA_OERR_POSN                                   0x1
#define _RC2STA_OERR_POSITION                               0x1
#define _RC2STA_OERR_SIZE                                   0x1
#define _RC2STA_OERR_LENGTH                                 0x1
#define _RC2STA_OERR_MASK                                   0x2
#define _RC2STA_FERR_POSN                                   0x2
#define _RC2STA_FERR_POSITION                               0x2
#define _RC2STA_FERR_SIZE                                   0x1
#define _RC2STA_FERR_LENGTH                                 0x1
#define _RC2STA_FERR_MASK                                   0x4
#define _RC2STA_ADDEN_POSN                                  0x3
#define _RC2STA_ADDEN_POSITION                              0x3
#define _RC2STA_ADDEN_SIZE                                  0x1
#define _RC2STA_ADDEN_LENGTH                                0x1
#define _RC2STA_ADDEN_MASK                                  0x8
#define _RC2STA_CREN_POSN                                   0x4
#define _RC2STA_CREN_POSITION                               0x4
#define _RC2STA_CREN_SIZE                                   0x1
#define _RC2STA_CREN_LENGTH                                 0x1
#define _RC2STA_CREN_MASK                                   0x10
#define _RC2STA_SREN_POSN                                   0x5
#define _RC2STA_SREN_POSITION                               0x5
#define _RC2STA_SREN_SIZE                                   0x1
#define _RC2STA_SREN_LENGTH                                 0x1
#define _RC2STA_SREN_MASK                                   0x20
#define _RC2STA_RX9_POSN                                    0x6
#define _RC2STA_RX9_POSITION                                0x6
#define _RC2STA_RX9_SIZE                                    0x1
#define _RC2STA_RX9_LENGTH                                  0x1
#define _RC2STA_RX9_MASK                                    0x40
#define _RC2STA_SPEN_POSN                                   0x7
#define _RC2STA_SPEN_POSITION                               0x7
#define _RC2STA_SPEN_SIZE                                   0x1
#define _RC2STA_SPEN_LENGTH                                 0x1
#define _RC2STA_SPEN_MASK                                   0x80
#define _RC2STA_ADEN_POSN                                   0x3
#define _RC2STA_ADEN_POSITION                               0x3
#define _RC2STA_ADEN_SIZE                                   0x1
#define _RC2STA_ADEN_LENGTH                                 0x1
#define _RC2STA_ADEN_MASK                                   0x8
#define _RC2STA_RX9D2_POSN                                  0x0
#define _RC2STA_RX9D2_POSITION                              0x0
#define _RC2STA_RX9D2_SIZE                                  0x1
#define _RC2STA_RX9D2_LENGTH                                0x1
#define _RC2STA_RX9D2_MASK                                  0x1
#define _RC2STA_OERR2_POSN                                  0x1
#define _RC2STA_OERR2_POSITION                              0x1
#define _RC2STA_OERR2_SIZE                                  0x1
#define _RC2STA_OERR2_LENGTH                                0x1
#define _RC2STA_OERR2_MASK                                  0x2
#define _RC2STA_FERR2_POSN                                  0x2
#define _RC2STA_FERR2_POSITION                              0x2
#define _RC2STA_FERR2_SIZE                                  0x1
#define _RC2STA_FERR2_LENGTH                                0x1
#define _RC2STA_FERR2_MASK                                  0x4
#define _RC2STA_ADDEN2_POSN                                 0x3
#define _RC2STA_ADDEN2_POSITION                             0x3
#define _RC2STA_ADDEN2_SIZE                                 0x1
#define _RC2STA_ADDEN2_LENGTH                               0x1
#define _RC2STA_ADDEN2_MASK                                 0x8
#define _RC2STA_CREN2_POSN                                  0x4
#define _RC2STA_CREN2_POSITION                              0x4
#define _RC2STA_CREN2_SIZE                                  0x1
#define _RC2STA_CREN2_LENGTH                                0x1
#define _RC2STA_CREN2_MASK                                  0x10
#define _RC2STA_SREN2_POSN                                  0x5
#define _RC2STA_SREN2_POSITION                              0x5
#define _RC2STA_SREN2_SIZE                                  0x1
#define _RC2STA_SREN2_LENGTH                                0x1
#define _RC2STA_SREN2_MASK                                  0x20
#define _RC2STA_RX92_POSN                                   0x6
#define _RC2STA_RX92_POSITION                               0x6
#define _RC2STA_RX92_SIZE                                   0x1
#define _RC2STA_RX92_LENGTH                                 0x1
#define _RC2STA_RX92_MASK                                   0x40
#define _RC2STA_SPEN2_POSN                                  0x7
#define _RC2STA_SPEN2_POSITION                              0x7
#define _RC2STA_SPEN2_SIZE                                  0x1
#define _RC2STA_SPEN2_LENGTH                                0x1
#define _RC2STA_SPEN2_MASK                                  0x80
#define _RC2STA_RCD82_POSN                                  0x0
#define _RC2STA_RCD82_POSITION                              0x0
#define _RC2STA_RCD82_SIZE                                  0x1
#define _RC2STA_RCD82_LENGTH                                0x1
#define _RC2STA_RCD82_MASK                                  0x1
#define _RC2STA_RC8_92_POSN                                 0x6
#define _RC2STA_RC8_92_POSITION                             0x6
#define _RC2STA_RC8_92_SIZE                                 0x1
#define _RC2STA_RC8_92_LENGTH                               0x1
#define _RC2STA_RC8_92_MASK                                 0x40
#define _RC2STA_RC92_POSN                                   0x6
#define _RC2STA_RC92_POSITION                               0x6
#define _RC2STA_RC92_SIZE                                   0x1
#define _RC2STA_RC92_LENGTH                                 0x1
#define _RC2STA_RC92_MASK                                   0x40

// Register: TXSTA2
extern volatile unsigned char           TXSTA2              @ 0xF72;
#ifndef _LIB_BUILD
asm("TXSTA2 equ 0F72h");
#endif
// aliases
extern volatile unsigned char           TX2STA              @ 0xF72;
#ifndef _LIB_BUILD
asm("TX2STA equ 0F72h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned TX9D                   :1;
        unsigned TRMT                   :1;
        unsigned BRGH                   :1;
        unsigned SENDB                  :1;
        unsigned SYNC                   :1;
        unsigned TXEN                   :1;
        unsigned TX9                    :1;
        unsigned CSRC                   :1;
    };
    struct {
        unsigned TX9D2                  :1;
        unsigned TRMT2                  :1;
        unsigned BRGH2                  :1;
        unsigned SENDB2                 :1;
        unsigned SYNC2                  :1;
        unsigned TXEN2                  :1;
        unsigned TX92                   :1;
        unsigned CSRC2                  :1;
    };
    struct {
        unsigned TXD82                  :1;
        unsigned                        :5;
        unsigned TX8_92                 :1;
    };
} TXSTA2bits_t;
extern volatile TXSTA2bits_t TXSTA2bits @ 0xF72;
// bitfield macros
#define _TXSTA2_TX9D_POSN                                   0x0
#define _TXSTA2_TX9D_POSITION                               0x0
#define _TXSTA2_TX9D_SIZE                                   0x1
#define _TXSTA2_TX9D_LENGTH                                 0x1
#define _TXSTA2_TX9D_MASK                                   0x1
#define _TXSTA2_TRMT_POSN                                   0x1
#define _TXSTA2_TRMT_POSITION                               0x1
#define _TXSTA2_TRMT_SIZE                                   0x1
#define _TXSTA2_TRMT_LENGTH                                 0x1
#define _TXSTA2_TRMT_MASK                                   0x2
#define _TXSTA2_BRGH_POSN                                   0x2
#define _TXSTA2_BRGH_POSITION                               0x2
#define _TXSTA2_BRGH_SIZE                                   0x1
#define _TXSTA2_BRGH_LENGTH                                 0x1
#define _TXSTA2_BRGH_MASK                                   0x4
#define _TXSTA2_SENDB_POSN                                  0x3
#define _TXSTA2_SENDB_POSITION                              0x3
#define _TXSTA2_SENDB_SIZE                                  0x1
#define _TXSTA2_SENDB_LENGTH                                0x1
#define _TXSTA2_SENDB_MASK                                  0x8
#define _TXSTA2_SYNC_POSN                                   0x4
#define _TXSTA2_SYNC_POSITION                               0x4
#define _TXSTA2_SYNC_SIZE                                   0x1
#define _TXSTA2_SYNC_LENGTH                                 0x1
#define _TXSTA2_SYNC_MASK                                   0x10
#define _TXSTA2_TXEN_POSN                                   0x5
#define _TXSTA2_TXEN_POSITION                               0x5
#define _TXSTA2_TXEN_SIZE                                   0x1
#define _TXSTA2_TXEN_LENGTH                                 0x1
#define _TXSTA2_TXEN_MASK                                   0x20
#define _TXSTA2_TX9_POSN                                    0x6
#define _TXSTA2_TX9_POSITION                                0x6
#define _TXSTA2_TX9_SIZE                                    0x1
#define _TXSTA2_TX9_LENGTH                                  0x1
#define _TXSTA2_TX9_MASK                                    0x40
#define _TXSTA2_CSRC_POSN                                   0x7
#define _TXSTA2_CSRC_POSITION                               0x7
#define _TXSTA2_CSRC_SIZE                                   0x1
#define _TXSTA2_CSRC_LENGTH                                 0x1
#define _TXSTA2_CSRC_MASK                                   0x80
#define _TXSTA2_TX9D2_POSN                                  0x0
#define _TXSTA2_TX9D2_POSITION                              0x0
#define _TXSTA2_TX9D2_SIZE                                  0x1
#define _TXSTA2_TX9D2_LENGTH                                0x1
#define _TXSTA2_TX9D2_MASK                                  0x1
#define _TXSTA2_TRMT2_POSN                                  0x1
#define _TXSTA2_TRMT2_POSITION                              0x1
#define _TXSTA2_TRMT2_SIZE                                  0x1
#define _TXSTA2_TRMT2_LENGTH                                0x1
#define _TXSTA2_TRMT2_MASK                                  0x2
#define _TXSTA2_BRGH2_POSN                                  0x2
#define _TXSTA2_BRGH2_POSITION                              0x2
#define _TXSTA2_BRGH2_SIZE                                  0x1
#define _TXSTA2_BRGH2_LENGTH                                0x1
#define _TXSTA2_BRGH2_MASK                                  0x4
#define _TXSTA2_SENDB2_POSN                                 0x3
#define _TXSTA2_SENDB2_POSITION                             0x3
#define _TXSTA2_SENDB2_SIZE                                 0x1
#define _TXSTA2_SENDB2_LENGTH                               0x1
#define _TXSTA2_SENDB2_MASK                                 0x8
#define _TXSTA2_SYNC2_POSN                                  0x4
#define _TXSTA2_SYNC2_POSITION                              0x4
#define _TXSTA2_SYNC2_SIZE                                  0x1
#define _TXSTA2_SYNC2_LENGTH                                0x1
#define _TXSTA2_SYNC2_MASK                                  0x10
#define _TXSTA2_TXEN2_POSN                                  0x5
#define _TXSTA2_TXEN2_POSITION                              0x5
#define _TXSTA2_TXEN2_SIZE                                  0x1
#define _TXSTA2_TXEN2_LENGTH                                0x1
#define _TXSTA2_TXEN2_MASK                                  0x20
#define _TXSTA2_TX92_POSN                                   0x6
#define _TXSTA2_TX92_POSITION                               0x6
#define _TXSTA2_TX92_SIZE                                   0x1
#define _TXSTA2_TX92_LENGTH                                 0x1
#define _TXSTA2_TX92_MASK                                   0x40
#define _TXSTA2_CSRC2_POSN                                  0x7
#define _TXSTA2_CSRC2_POSITION                              0x7
#define _TXSTA2_CSRC2_SIZE                                  0x1
#define _TXSTA2_CSRC2_LENGTH                                0x1
#define _TXSTA2_CSRC2_MASK                                  0x80
#define _TXSTA2_TXD82_POSN                                  0x0
#define _TXSTA2_TXD82_POSITION                              0x0
#define _TXSTA2_TXD82_SIZE                                  0x1
#define _TXSTA2_TXD82_LENGTH                                0x1
#define _TXSTA2_TXD82_MASK                                  0x1
#define _TXSTA2_TX8_92_POSN                                 0x6
#define _TXSTA2_TX8_92_POSITION                             0x6
#define _TXSTA2_TX8_92_SIZE                                 0x1
#define _TXSTA2_TX8_92_LENGTH                               0x1
#define _TXSTA2_TX8_92_MASK                                 0x40
// alias bitfield definitions
typedef union {
    struct {
        unsigned TX9D                   :1;
        unsigned TRMT                   :1;
        unsigned BRGH                   :1;
        unsigned SENDB                  :1;
        unsigned SYNC                   :1;
        unsigned TXEN                   :1;
        unsigned TX9                    :1;
        unsigned CSRC                   :1;
    };
    struct {
        unsigned TX9D2                  :1;
        unsigned TRMT2                  :1;
        unsigned BRGH2                  :1;
        unsigned SENDB2                 :1;
        unsigned SYNC2                  :1;
        unsigned TXEN2                  :1;
        unsigned TX92                   :1;
        unsigned CSRC2                  :1;
    };
    struct {
        unsigned TXD82                  :1;
        unsigned                        :5;
        unsigned TX8_92                 :1;
    };
} TX2STAbits_t;
extern volatile TX2STAbits_t TX2STAbits @ 0xF72;
// bitfield macros
#define _TX2STA_TX9D_POSN                                   0x0
#define _TX2STA_TX9D_POSITION                               0x0
#define _TX2STA_TX9D_SIZE                                   0x1
#define _TX2STA_TX9D_LENGTH                                 0x1
#define _TX2STA_TX9D_MASK                                   0x1
#define _TX2STA_TRMT_POSN                                   0x1
#define _TX2STA_TRMT_POSITION                               0x1
#define _TX2STA_TRMT_SIZE                                   0x1
#define _TX2STA_TRMT_LENGTH                                 0x1
#define _TX2STA_TRMT_MASK                                   0x2
#define _TX2STA_BRGH_POSN                                   0x2
#define _TX2STA_BRGH_POSITION                               0x2
#define _TX2STA_BRGH_SIZE                                   0x1
#define _TX2STA_BRGH_LENGTH                                 0x1
#define _TX2STA_BRGH_MASK                                   0x4
#define _TX2STA_SENDB_POSN                                  0x3
#define _TX2STA_SENDB_POSITION                              0x3
#define _TX2STA_SENDB_SIZE                                  0x1
#define _TX2STA_SENDB_LENGTH                                0x1
#define _TX2STA_SENDB_MASK                                  0x8
#define _TX2STA_SYNC_POSN                                   0x4
#define _TX2STA_SYNC_POSITION                               0x4
#define _TX2STA_SYNC_SIZE                                   0x1
#define _TX2STA_SYNC_LENGTH                                 0x1
#define _TX2STA_SYNC_MASK                                   0x10
#define _TX2STA_TXEN_POSN                                   0x5
#define _TX2STA_TXEN_POSITION                               0x5
#define _TX2STA_TXEN_SIZE                                   0x1
#define _TX2STA_TXEN_LENGTH                                 0x1
#define _TX2STA_TXEN_MASK                                   0x20
#define _TX2STA_TX9_POSN                                    0x6
#define _TX2STA_TX9_POSITION                                0x6
#define _TX2STA_TX9_SIZE                                    0x1
#define _TX2STA_TX9_LENGTH                                  0x1
#define _TX2STA_TX9_MASK                                    0x40
#define _TX2STA_CSRC_POSN                                   0x7
#define _TX2STA_CSRC_POSITION                               0x7
#define _TX2STA_CSRC_SIZE                                   0x1
#define _TX2STA_CSRC_LENGTH                                 0x1
#define _TX2STA_CSRC_MASK                                   0x80
#define _TX2STA_TX9D2_POSN                                  0x0
#define _TX2STA_TX9D2_POSITION                              0x0
#define _TX2STA_TX9D2_SIZE                                  0x1
#define _TX2STA_TX9D2_LENGTH                                0x1
#define _TX2STA_TX9D2_MASK                                  0x1
#define _TX2STA_TRMT2_POSN                                  0x1
#define _TX2STA_TRMT2_POSITION                              0x1
#define _TX2STA_TRMT2_SIZE                                  0x1
#define _TX2STA_TRMT2_LENGTH                                0x1
#define _TX2STA_TRMT2_MASK                                  0x2
#define _TX2STA_BRGH2_POSN                                  0x2
#define _TX2STA_BRGH2_POSITION                              0x2
#define _TX2STA_BRGH2_SIZE                                  0x1
#define _TX2STA_BRGH2_LENGTH                                0x1
#define _TX2STA_BRGH2_MASK                                  0x4
#define _TX2STA_SENDB2_POSN                                 0x3
#define _TX2STA_SENDB2_POSITION                             0x3
#define _TX2STA_SENDB2_SIZE                                 0x1
#define _TX2STA_SENDB2_LENGTH                               0x1
#define _TX2STA_SENDB2_MASK                                 0x8
#define _TX2STA_SYNC2_POSN                                  0x4
#define _TX2STA_SYNC2_POSITION                              0x4
#define _TX2STA_SYNC2_SIZE                                  0x1
#define _TX2STA_SYNC2_LENGTH                                0x1
#define _TX2STA_SYNC2_MASK                                  0x10
#define _TX2STA_TXEN2_POSN                                  0x5
#define _TX2STA_TXEN2_POSITION                              0x5
#define _TX2STA_TXEN2_SIZE                                  0x1
#define _TX2STA_TXEN2_LENGTH                                0x1
#define _TX2STA_TXEN2_MASK                                  0x20
#define _TX2STA_TX92_POSN                                   0x6
#define _TX2STA_TX92_POSITION                               0x6
#define _TX2STA_TX92_SIZE                                   0x1
#define _TX2STA_TX92_LENGTH                                 0x1
#define _TX2STA_TX92_MASK                                   0x40
#define _TX2STA_CSRC2_POSN                                  0x7
#define _TX2STA_CSRC2_POSITION                              0x7
#define _TX2STA_CSRC2_SIZE                                  0x1
#define _TX2STA_CSRC2_LENGTH                                0x1
#define _TX2STA_CSRC2_MASK                                  0x80
#define _TX2STA_TXD82_POSN                                  0x0
#define _TX2STA_TXD82_POSITION                              0x0
#define _TX2STA_TXD82_SIZE                                  0x1
#define _TX2STA_TXD82_LENGTH                                0x1
#define _TX2STA_TXD82_MASK                                  0x1
#define _TX2STA_TX8_92_POSN                                 0x6
#define _TX2STA_TX8_92_POSITION                             0x6
#define _TX2STA_TX8_92_SIZE                                 0x1
#define _TX2STA_TX8_92_LENGTH                               0x1
#define _TX2STA_TX8_92_MASK                                 0x40

// Register: TXREG2
extern volatile unsigned char           TXREG2              @ 0xF73;
#ifndef _LIB_BUILD
asm("TXREG2 equ 0F73h");
#endif
// aliases
extern volatile unsigned char           TX2REG              @ 0xF73;
#ifndef _LIB_BUILD
asm("TX2REG equ 0F73h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned TX2REG                 :8;
    };
} TXREG2bits_t;
extern volatile TXREG2bits_t TXREG2bits @ 0xF73;
// bitfield macros
#define _TXREG2_TX2REG_POSN                                 0x0
#define _TXREG2_TX2REG_POSITION                             0x0
#define _TXREG2_TX2REG_SIZE                                 0x8
#define _TXREG2_TX2REG_LENGTH                               0x8
#define _TXREG2_TX2REG_MASK                                 0xFF
// alias bitfield definitions
typedef union {
    struct {
        unsigned TX2REG                 :8;
    };
} TX2REGbits_t;
extern volatile TX2REGbits_t TX2REGbits @ 0xF73;
// bitfield macros
#define _TX2REG_TX2REG_POSN                                 0x0
#define _TX2REG_TX2REG_POSITION                             0x0
#define _TX2REG_TX2REG_SIZE                                 0x8
#define _TX2REG_TX2REG_LENGTH                               0x8
#define _TX2REG_TX2REG_MASK                                 0xFF

// Register: RCREG2
extern volatile unsigned char           RCREG2              @ 0xF74;
#ifndef _LIB_BUILD
asm("RCREG2 equ 0F74h");
#endif
// aliases
extern volatile unsigned char           RC2REG              @ 0xF74;
#ifndef _LIB_BUILD
asm("RC2REG equ 0F74h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned RC2REG                 :8;
    };
} RCREG2bits_t;
extern volatile RCREG2bits_t RCREG2bits @ 0xF74;
// bitfield macros
#define _RCREG2_RC2REG_POSN                                 0x0
#define _RCREG2_RC2REG_POSITION                             0x0
#define _RCREG2_RC2REG_SIZE                                 0x8
#define _RCREG2_RC2REG_LENGTH                               0x8
#define _RCREG2_RC2REG_MASK                                 0xFF
// alias bitfield definitions
typedef union {
    struct {
        unsigned RC2REG                 :8;
    };
} RC2REGbits_t;
extern volatile RC2REGbits_t RC2REGbits @ 0xF74;
// bitfield macros
#define _RC2REG_RC2REG_POSN                                 0x0
#define _RC2REG_RC2REG_POSITION                             0x0
#define _RC2REG_RC2REG_SIZE                                 0x8
#define _RC2REG_RC2REG_LENGTH                               0x8
#define _RC2REG_RC2REG_MASK                                 0xFF

// Register: SPBRG2
extern volatile unsigned char           SPBRG2              @ 0xF75;
#ifndef _LIB_BUILD
asm("SPBRG2 equ 0F75h");
#endif
// aliases
extern volatile unsigned char           SP2BRG              @ 0xF75;
#ifndef _LIB_BUILD
asm("SP2BRG equ 0F75h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned SP2BRG                 :8;
    };
} SPBRG2bits_t;
extern volatile SPBRG2bits_t SPBRG2bits @ 0xF75;
// bitfield macros
#define _SPBRG2_SP2BRG_POSN                                 0x0
#define _SPBRG2_SP2BRG_POSITION                             0x0
#define _SPBRG2_SP2BRG_SIZE                                 0x8
#define _SPBRG2_SP2BRG_LENGTH                               0x8
#define _SPBRG2_SP2BRG_MASK                                 0xFF
// alias bitfield definitions
typedef union {
    struct {
        unsigned SP2BRG                 :8;
    };
} SP2BRGbits_t;
extern volatile SP2BRGbits_t SP2BRGbits @ 0xF75;
// bitfield macros
#define _SP2BRG_SP2BRG_POSN                                 0x0
#define _SP2BRG_SP2BRG_POSITION                             0x0
#define _SP2BRG_SP2BRG_SIZE                                 0x8
#define _SP2BRG_SP2BRG_LENGTH                               0x8
#define _SP2BRG_SP2BRG_MASK                                 0xFF

// Register: SPBRGH2
extern volatile unsigned char           SPBRGH2             @ 0xF76;
#ifndef _LIB_BUILD
asm("SPBRGH2 equ 0F76h");
#endif
// aliases
extern volatile unsigned char           SP2BRGH             @ 0xF76;
#ifndef _LIB_BUILD
asm("SP2BRGH equ 0F76h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned SP2BRGH                :8;
    };
} SPBRGH2bits_t;
extern volatile SPBRGH2bits_t SPBRGH2bits @ 0xF76;
// bitfield macros
#define _SPBRGH2_SP2BRGH_POSN                               0x0
#define _SPBRGH2_SP2BRGH_POSITION                           0x0
#define _SPBRGH2_SP2BRGH_SIZE                               0x8
#define _SPBRGH2_SP2BRGH_LENGTH                             0x8
#define _SPBRGH2_SP2BRGH_MASK                               0xFF
// alias bitfield definitions
typedef union {
    struct {
        unsigned SP2BRGH                :8;
    };
} SP2BRGHbits_t;
extern volatile SP2BRGHbits_t SP2BRGHbits @ 0xF76;
// bitfield macros
#define _SP2BRGH_SP2BRGH_POSN                               0x0
#define _SP2BRGH_SP2BRGH_POSITION                           0x0
#define _SP2BRGH_SP2BRGH_SIZE                               0x8
#define _SP2BRGH_SP2BRGH_LENGTH                             0x8
#define _SP2BRGH_SP2BRGH_MASK                               0xFF

// Register: CM2CON1
extern volatile unsigned char           CM2CON1             @ 0xF77;
#ifndef _LIB_BUILD
asm("CM2CON1 equ 0F77h");
#endif
// aliases
extern volatile unsigned char           CM12CON             @ 0xF77;
#ifndef _LIB_BUILD
asm("CM12CON equ 0F77h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned C2SYNC                 :1;
        unsigned C1SYNC                 :1;
        unsigned C2HYS                  :1;
        unsigned C1HYS                  :1;
        unsigned C2RSEL                 :1;
        unsigned C1RSEL                 :1;
        unsigned MC2OUT                 :1;
        unsigned MC1OUT                 :1;
    };
} CM2CON1bits_t;
extern volatile CM2CON1bits_t CM2CON1bits @ 0xF77;
// bitfield macros
#define _CM2CON1_C2SYNC_POSN                                0x0
#define _CM2CON1_C2SYNC_POSITION                            0x0
#define _CM2CON1_C2SYNC_SIZE                                0x1
#define _CM2CON1_C2SYNC_LENGTH                              0x1
#define _CM2CON1_C2SYNC_MASK                                0x1
#define _CM2CON1_C1SYNC_POSN                                0x1
#define _CM2CON1_C1SYNC_POSITION                            0x1
#define _CM2CON1_C1SYNC_SIZE                                0x1
#define _CM2CON1_C1SYNC_LENGTH                              0x1
#define _CM2CON1_C1SYNC_MASK                                0x2
#define _CM2CON1_C2HYS_POSN                                 0x2
#define _CM2CON1_C2HYS_POSITION                             0x2
#define _CM2CON1_C2HYS_SIZE                                 0x1
#define _CM2CON1_C2HYS_LENGTH                               0x1
#define _CM2CON1_C2HYS_MASK                                 0x4
#define _CM2CON1_C1HYS_POSN                                 0x3
#define _CM2CON1_C1HYS_POSITION                             0x3
#define _CM2CON1_C1HYS_SIZE                                 0x1
#define _CM2CON1_C1HYS_LENGTH                               0x1
#define _CM2CON1_C1HYS_MASK                                 0x8
#define _CM2CON1_C2RSEL_POSN                                0x4
#define _CM2CON1_C2RSEL_POSITION                            0x4
#define _CM2CON1_C2RSEL_SIZE                                0x1
#define _CM2CON1_C2RSEL_LENGTH                              0x1
#define _CM2CON1_C2RSEL_MASK                                0x10
#define _CM2CON1_C1RSEL_POSN                                0x5
#define _CM2CON1_C1RSEL_POSITION                            0x5
#define _CM2CON1_C1RSEL_SIZE                                0x1
#define _CM2CON1_C1RSEL_LENGTH                              0x1
#define _CM2CON1_C1RSEL_MASK                                0x20
#define _CM2CON1_MC2OUT_POSN                                0x6
#define _CM2CON1_MC2OUT_POSITION                            0x6
#define _CM2CON1_MC2OUT_SIZE                                0x1
#define _CM2CON1_MC2OUT_LENGTH                              0x1
#define _CM2CON1_MC2OUT_MASK                                0x40
#define _CM2CON1_MC1OUT_POSN                                0x7
#define _CM2CON1_MC1OUT_POSITION                            0x7
#define _CM2CON1_MC1OUT_SIZE                                0x1
#define _CM2CON1_MC1OUT_LENGTH                              0x1
#define _CM2CON1_MC1OUT_MASK                                0x80
// alias bitfield definitions
typedef union {
    struct {
        unsigned C2SYNC                 :1;
        unsigned C1SYNC                 :1;
        unsigned C2HYS                  :1;
        unsigned C1HYS                  :1;
        unsigned C2RSEL                 :1;
        unsigned C1RSEL                 :1;
        unsigned MC2OUT                 :1;
        unsigned MC1OUT                 :1;
    };
} CM12CONbits_t;
extern volatile CM12CONbits_t CM12CONbits @ 0xF77;
// bitfield macros
#define _CM12CON_C2SYNC_POSN                                0x0
#define _CM12CON_C2SYNC_POSITION                            0x0
#define _CM12CON_C2SYNC_SIZE                                0x1
#define _CM12CON_C2SYNC_LENGTH                              0x1
#define _CM12CON_C2SYNC_MASK                                0x1
#define _CM12CON_C1SYNC_POSN                                0x1
#define _CM12CON_C1SYNC_POSITION                            0x1
#define _CM12CON_C1SYNC_SIZE                                0x1
#define _CM12CON_C1SYNC_LENGTH                              0x1
#define _CM12CON_C1SYNC_MASK                                0x2
#define _CM12CON_C2HYS_POSN                                 0x2
#define _CM12CON_C2HYS_POSITION                             0x2
#define _CM12CON_C2HYS_SIZE                                 0x1
#define _CM12CON_C2HYS_LENGTH                               0x1
#define _CM12CON_C2HYS_MASK                                 0x4
#define _CM12CON_C1HYS_POSN                                 0x3
#define _CM12CON_C1HYS_POSITION                             0x3
#define _CM12CON_C1HYS_SIZE                                 0x1
#define _CM12CON_C1HYS_LENGTH                               0x1
#define _CM12CON_C1HYS_MASK                                 0x8
#define _CM12CON_C2RSEL_POSN                                0x4
#define _CM12CON_C2RSEL_POSITION                            0x4
#define _CM12CON_C2RSEL_SIZE                                0x1
#define _CM12CON_C2RSEL_LENGTH                              0x1
#define _CM12CON_C2RSEL_MASK                                0x10
#define _CM12CON_C1RSEL_POSN                                0x5
#define _CM12CON_C1RSEL_POSITION                            0x5
#define _CM12CON_C1RSEL_SIZE                                0x1
#define _CM12CON_C1RSEL_LENGTH                              0x1
#define _CM12CON_C1RSEL_MASK                                0x20
#define _CM12CON_MC2OUT_POSN                                0x6
#define _CM12CON_MC2OUT_POSITION                            0x6
#define _CM12CON_MC2OUT_SIZE                                0x1
#define _CM12CON_MC2OUT_LENGTH                              0x1
#define _CM12CON_MC2OUT_MASK                                0x40
#define _CM12CON_MC1OUT_POSN                                0x7
#define _CM12CON_MC1OUT_POSITION                            0x7
#define _CM12CON_MC1OUT_SIZE                                0x1
#define _CM12CON_MC1OUT_LENGTH                              0x1
#define _CM12CON_MC1OUT_MASK                                0x80

// Register: CM2CON0
extern volatile unsigned char           CM2CON0             @ 0xF78;
#ifndef _LIB_BUILD
asm("CM2CON0 equ 0F78h");
#endif
// aliases
extern volatile unsigned char           CM2CON              @ 0xF78;
#ifndef _LIB_BUILD
asm("CM2CON equ 0F78h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned C2CH                   :2;
        unsigned C2R                    :1;
        unsigned C2SP                   :1;
        unsigned C2POL                  :1;
        unsigned C2OE                   :1;
        unsigned C2OUT                  :1;
        unsigned C2ON                   :1;
    };
    struct {
        unsigned C2CH0                  :1;
        unsigned C2CH1                  :1;
    };
    struct {
        unsigned CCH02                  :1;
    };
    struct {
        unsigned                        :1;
        unsigned CCH12                  :1;
    };
    struct {
        unsigned                        :6;
        unsigned COE2                   :1;
    };
    struct {
        unsigned                        :7;
        unsigned CON2                   :1;
    };
    struct {
        unsigned                        :5;
        unsigned CPOL2                  :1;
    };
    struct {
        unsigned                        :2;
        unsigned CREF2                  :1;
    };
    struct {
        unsigned                        :3;
        unsigned EVPOL02                :1;
    };
    struct {
        unsigned                        :4;
        unsigned EVPOL12                :1;
    };
} CM2CON0bits_t;
extern volatile CM2CON0bits_t CM2CON0bits @ 0xF78;
// bitfield macros
#define _CM2CON0_C2CH_POSN                                  0x0
#define _CM2CON0_C2CH_POSITION                              0x0
#define _CM2CON0_C2CH_SIZE                                  0x2
#define _CM2CON0_C2CH_LENGTH                                0x2
#define _CM2CON0_C2CH_MASK                                  0x3
#define _CM2CON0_C2R_POSN                                   0x2
#define _CM2CON0_C2R_POSITION                               0x2
#define _CM2CON0_C2R_SIZE                                   0x1
#define _CM2CON0_C2R_LENGTH                                 0x1
#define _CM2CON0_C2R_MASK                                   0x4
#define _CM2CON0_C2SP_POSN                                  0x3
#define _CM2CON0_C2SP_POSITION                              0x3
#define _CM2CON0_C2SP_SIZE                                  0x1
#define _CM2CON0_C2SP_LENGTH                                0x1
#define _CM2CON0_C2SP_MASK                                  0x8
#define _CM2CON0_C2POL_POSN                                 0x4
#define _CM2CON0_C2POL_POSITION                             0x4
#define _CM2CON0_C2POL_SIZE                                 0x1
#define _CM2CON0_C2POL_LENGTH                               0x1
#define _CM2CON0_C2POL_MASK                                 0x10
#define _CM2CON0_C2OE_POSN                                  0x5
#define _CM2CON0_C2OE_POSITION                              0x5
#define _CM2CON0_C2OE_SIZE                                  0x1
#define _CM2CON0_C2OE_LENGTH                                0x1
#define _CM2CON0_C2OE_MASK                                  0x20
#define _CM2CON0_C2OUT_POSN                                 0x6
#define _CM2CON0_C2OUT_POSITION                             0x6
#define _CM2CON0_C2OUT_SIZE                                 0x1
#define _CM2CON0_C2OUT_LENGTH                               0x1
#define _CM2CON0_C2OUT_MASK                                 0x40
#define _CM2CON0_C2ON_POSN                                  0x7
#define _CM2CON0_C2ON_POSITION                              0x7
#define _CM2CON0_C2ON_SIZE                                  0x1
#define _CM2CON0_C2ON_LENGTH                                0x1
#define _CM2CON0_C2ON_MASK                                  0x80
#define _CM2CON0_C2CH0_POSN                                 0x0
#define _CM2CON0_C2CH0_POSITION                             0x0
#define _CM2CON0_C2CH0_SIZE                                 0x1
#define _CM2CON0_C2CH0_LENGTH                               0x1
#define _CM2CON0_C2CH0_MASK                                 0x1
#define _CM2CON0_C2CH1_POSN                                 0x1
#define _CM2CON0_C2CH1_POSITION                             0x1
#define _CM2CON0_C2CH1_SIZE                                 0x1
#define _CM2CON0_C2CH1_LENGTH                               0x1
#define _CM2CON0_C2CH1_MASK                                 0x2
#define _CM2CON0_CCH02_POSN                                 0x0
#define _CM2CON0_CCH02_POSITION                             0x0
#define _CM2CON0_CCH02_SIZE                                 0x1
#define _CM2CON0_CCH02_LENGTH                               0x1
#define _CM2CON0_CCH02_MASK                                 0x1
#define _CM2CON0_CCH12_POSN                                 0x1
#define _CM2CON0_CCH12_POSITION                             0x1
#define _CM2CON0_CCH12_SIZE                                 0x1
#define _CM2CON0_CCH12_LENGTH                               0x1
#define _CM2CON0_CCH12_MASK                                 0x2
#define _CM2CON0_COE2_POSN                                  0x6
#define _CM2CON0_COE2_POSITION                              0x6
#define _CM2CON0_COE2_SIZE                                  0x1
#define _CM2CON0_COE2_LENGTH                                0x1
#define _CM2CON0_COE2_MASK                                  0x40
#define _CM2CON0_CON2_POSN                                  0x7
#define _CM2CON0_CON2_POSITION                              0x7
#define _CM2CON0_CON2_SIZE                                  0x1
#define _CM2CON0_CON2_LENGTH                                0x1
#define _CM2CON0_CON2_MASK                                  0x80
#define _CM2CON0_CPOL2_POSN                                 0x5
#define _CM2CON0_CPOL2_POSITION                             0x5
#define _CM2CON0_CPOL2_SIZE                                 0x1
#define _CM2CON0_CPOL2_LENGTH                               0x1
#define _CM2CON0_CPOL2_MASK                                 0x20
#define _CM2CON0_CREF2_POSN                                 0x2
#define _CM2CON0_CREF2_POSITION                             0x2
#define _CM2CON0_CREF2_SIZE                                 0x1
#define _CM2CON0_CREF2_LENGTH                               0x1
#define _CM2CON0_CREF2_MASK                                 0x4
#define _CM2CON0_EVPOL02_POSN                               0x3
#define _CM2CON0_EVPOL02_POSITION                           0x3
#define _CM2CON0_EVPOL02_SIZE                               0x1
#define _CM2CON0_EVPOL02_LENGTH                             0x1
#define _CM2CON0_EVPOL02_MASK                               0x8
#define _CM2CON0_EVPOL12_POSN                               0x4
#define _CM2CON0_EVPOL12_POSITION                           0x4
#define _CM2CON0_EVPOL12_SIZE                               0x1
#define _CM2CON0_EVPOL12_LENGTH                             0x1
#define _CM2CON0_EVPOL12_MASK                               0x10
// alias bitfield definitions
typedef union {
    struct {
        unsigned C2CH                   :2;
        unsigned C2R                    :1;
        unsigned C2SP                   :1;
        unsigned C2POL                  :1;
        unsigned C2OE                   :1;
        unsigned C2OUT                  :1;
        unsigned C2ON                   :1;
    };
    struct {
        unsigned C2CH0                  :1;
        unsigned C2CH1                  :1;
    };
    struct {
        unsigned CCH02                  :1;
    };
    struct {
        unsigned                        :1;
        unsigned CCH12                  :1;
    };
    struct {
        unsigned                        :6;
        unsigned COE2                   :1;
    };
    struct {
        unsigned                        :7;
        unsigned CON2                   :1;
    };
    struct {
        unsigned                        :5;
        unsigned CPOL2                  :1;
    };
    struct {
        unsigned                        :2;
        unsigned CREF2                  :1;
    };
    struct {
        unsigned                        :3;
        unsigned EVPOL02                :1;
    };
    struct {
        unsigned                        :4;
        unsigned EVPOL12                :1;
    };
} CM2CONbits_t;
extern volatile CM2CONbits_t CM2CONbits @ 0xF78;
// bitfield macros
#define _CM2CON_C2CH_POSN                                   0x0
#define _CM2CON_C2CH_POSITION                               0x0
#define _CM2CON_C2CH_SIZE                                   0x2
#define _CM2CON_C2CH_LENGTH                                 0x2
#define _CM2CON_C2CH_MASK                                   0x3
#define _CM2CON_C2R_POSN                                    0x2
#define _CM2CON_C2R_POSITION                                0x2
#define _CM2CON_C2R_SIZE                                    0x1
#define _CM2CON_C2R_LENGTH                                  0x1
#define _CM2CON_C2R_MASK                                    0x4
#define _CM2CON_C2SP_POSN                                   0x3
#define _CM2CON_C2SP_POSITION                               0x3
#define _CM2CON_C2SP_SIZE                                   0x1
#define _CM2CON_C2SP_LENGTH                                 0x1
#define _CM2CON_C2SP_MASK                                   0x8
#define _CM2CON_C2POL_POSN                                  0x4
#define _CM2CON_C2POL_POSITION                              0x4
#define _CM2CON_C2POL_SIZE                                  0x1
#define _CM2CON_C2POL_LENGTH                                0x1
#define _CM2CON_C2POL_MASK                                  0x10
#define _CM2CON_C2OE_POSN                                   0x5
#define _CM2CON_C2OE_POSITION                               0x5
#define _CM2CON_C2OE_SIZE                                   0x1
#define _CM2CON_C2OE_LENGTH                                 0x1
#define _CM2CON_C2OE_MASK                                   0x20
#define _CM2CON_C2OUT_POSN                                  0x6
#define _CM2CON_C2OUT_POSITION                              0x6
#define _CM2CON_C2OUT_SIZE                                  0x1
#define _CM2CON_C2OUT_LENGTH                                0x1
#define _CM2CON_C2OUT_MASK                                  0x40
#define _CM2CON_C2ON_POSN                                   0x7
#define _CM2CON_C2ON_POSITION                               0x7
#define _CM2CON_C2ON_SIZE                                   0x1
#define _CM2CON_C2ON_LENGTH                                 0x1
#define _CM2CON_C2ON_MASK                                   0x80
#define _CM2CON_C2CH0_POSN                                  0x0
#define _CM2CON_C2CH0_POSITION                              0x0
#define _CM2CON_C2CH0_SIZE                                  0x1
#define _CM2CON_C2CH0_LENGTH                                0x1
#define _CM2CON_C2CH0_MASK                                  0x1
#define _CM2CON_C2CH1_POSN                                  0x1
#define _CM2CON_C2CH1_POSITION                              0x1
#define _CM2CON_C2CH1_SIZE                                  0x1
#define _CM2CON_C2CH1_LENGTH                                0x1
#define _CM2CON_C2CH1_MASK                                  0x2
#define _CM2CON_CCH02_POSN                                  0x0
#define _CM2CON_CCH02_POSITION                              0x0
#define _CM2CON_CCH02_SIZE                                  0x1
#define _CM2CON_CCH02_LENGTH                                0x1
#define _CM2CON_CCH02_MASK                                  0x1
#define _CM2CON_CCH12_POSN                                  0x1
#define _CM2CON_CCH12_POSITION                              0x1
#define _CM2CON_CCH12_SIZE                                  0x1
#define _CM2CON_CCH12_LENGTH                                0x1
#define _CM2CON_CCH12_MASK                                  0x2
#define _CM2CON_COE2_POSN                                   0x6
#define _CM2CON_COE2_POSITION                               0x6
#define _CM2CON_COE2_SIZE                                   0x1
#define _CM2CON_COE2_LENGTH                                 0x1
#define _CM2CON_COE2_MASK                                   0x40
#define _CM2CON_CON2_POSN                                   0x7
#define _CM2CON_CON2_POSITION                               0x7
#define _CM2CON_CON2_SIZE                                   0x1
#define _CM2CON_CON2_LENGTH                                 0x1
#define _CM2CON_CON2_MASK                                   0x80
#define _CM2CON_CPOL2_POSN                                  0x5
#define _CM2CON_CPOL2_POSITION                              0x5
#define _CM2CON_CPOL2_SIZE                                  0x1
#define _CM2CON_CPOL2_LENGTH                                0x1
#define _CM2CON_CPOL2_MASK                                  0x20
#define _CM2CON_CREF2_POSN                                  0x2
#define _CM2CON_CREF2_POSITION                              0x2
#define _CM2CON_CREF2_SIZE                                  0x1
#define _CM2CON_CREF2_LENGTH                                0x1
#define _CM2CON_CREF2_MASK                                  0x4
#define _CM2CON_EVPOL02_POSN                                0x3
#define _CM2CON_EVPOL02_POSITION                            0x3
#define _CM2CON_EVPOL02_SIZE                                0x1
#define _CM2CON_EVPOL02_LENGTH                              0x1
#define _CM2CON_EVPOL02_MASK                                0x8
#define _CM2CON_EVPOL12_POSN                                0x4
#define _CM2CON_EVPOL12_POSITION                            0x4
#define _CM2CON_EVPOL12_SIZE                                0x1
#define _CM2CON_EVPOL12_LENGTH                              0x1
#define _CM2CON_EVPOL12_MASK                                0x10

// Register: CM1CON0
extern volatile unsigned char           CM1CON0             @ 0xF79;
#ifndef _LIB_BUILD
asm("CM1CON0 equ 0F79h");
#endif
// aliases
extern volatile unsigned char           CM1CON              @ 0xF79;
#ifndef _LIB_BUILD
asm("CM1CON equ 0F79h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned C1CH                   :2;
        unsigned C1R                    :1;
        unsigned C1SP                   :1;
        unsigned C1POL                  :1;
        unsigned C1OE                   :1;
        unsigned C1OUT                  :1;
        unsigned C1ON                   :1;
    };
    struct {
        unsigned C1CH0                  :1;
        unsigned C1CH1                  :1;
    };
    struct {
        unsigned CCH0                   :1;
    };
    struct {
        unsigned CCH01                  :1;
    };
    struct {
        unsigned                        :1;
        unsigned CCH1                   :1;
    };
    struct {
        unsigned                        :1;
        unsigned CCH11                  :1;
    };
    struct {
        unsigned                        :6;
        unsigned COE                    :1;
    };
    struct {
        unsigned                        :6;
        unsigned COE1                   :1;
    };
    struct {
        unsigned                        :7;
        unsigned CON                    :1;
    };
    struct {
        unsigned                        :7;
        unsigned CON1                   :1;
    };
    struct {
        unsigned                        :5;
        unsigned CPOL                   :1;
    };
    struct {
        unsigned                        :5;
        unsigned CPOL1                  :1;
    };
    struct {
        unsigned                        :2;
        unsigned CREF                   :1;
    };
    struct {
        unsigned                        :2;
        unsigned CREF1                  :1;
    };
    struct {
        unsigned                        :3;
        unsigned EVPOL0                 :1;
    };
    struct {
        unsigned                        :3;
        unsigned EVPOL01                :1;
    };
    struct {
        unsigned                        :4;
        unsigned EVPOL1                 :1;
    };
    struct {
        unsigned                        :4;
        unsigned EVPOL11                :1;
    };
} CM1CON0bits_t;
extern volatile CM1CON0bits_t CM1CON0bits @ 0xF79;
// bitfield macros
#define _CM1CON0_C1CH_POSN                                  0x0
#define _CM1CON0_C1CH_POSITION                              0x0
#define _CM1CON0_C1CH_SIZE                                  0x2
#define _CM1CON0_C1CH_LENGTH                                0x2
#define _CM1CON0_C1CH_MASK                                  0x3
#define _CM1CON0_C1R_POSN                                   0x2
#define _CM1CON0_C1R_POSITION                               0x2
#define _CM1CON0_C1R_SIZE                                   0x1
#define _CM1CON0_C1R_LENGTH                                 0x1
#define _CM1CON0_C1R_MASK                                   0x4
#define _CM1CON0_C1SP_POSN                                  0x3
#define _CM1CON0_C1SP_POSITION                              0x3
#define _CM1CON0_C1SP_SIZE                                  0x1
#define _CM1CON0_C1SP_LENGTH                                0x1
#define _CM1CON0_C1SP_MASK                                  0x8
#define _CM1CON0_C1POL_POSN                                 0x4
#define _CM1CON0_C1POL_POSITION                             0x4
#define _CM1CON0_C1POL_SIZE                                 0x1
#define _CM1CON0_C1POL_LENGTH                               0x1
#define _CM1CON0_C1POL_MASK                                 0x10
#define _CM1CON0_C1OE_POSN                                  0x5
#define _CM1CON0_C1OE_POSITION                              0x5
#define _CM1CON0_C1OE_SIZE                                  0x1
#define _CM1CON0_C1OE_LENGTH                                0x1
#define _CM1CON0_C1OE_MASK                                  0x20
#define _CM1CON0_C1OUT_POSN                                 0x6
#define _CM1CON0_C1OUT_POSITION                             0x6
#define _CM1CON0_C1OUT_SIZE                                 0x1
#define _CM1CON0_C1OUT_LENGTH                               0x1
#define _CM1CON0_C1OUT_MASK                                 0x40
#define _CM1CON0_C1ON_POSN                                  0x7
#define _CM1CON0_C1ON_POSITION                              0x7
#define _CM1CON0_C1ON_SIZE                                  0x1
#define _CM1CON0_C1ON_LENGTH                                0x1
#define _CM1CON0_C1ON_MASK                                  0x80
#define _CM1CON0_C1CH0_POSN                                 0x0
#define _CM1CON0_C1CH0_POSITION                             0x0
#define _CM1CON0_C1CH0_SIZE                                 0x1
#define _CM1CON0_C1CH0_LENGTH                               0x1
#define _CM1CON0_C1CH0_MASK                                 0x1
#define _CM1CON0_C1CH1_POSN                                 0x1
#define _CM1CON0_C1CH1_POSITION                             0x1
#define _CM1CON0_C1CH1_SIZE                                 0x1
#define _CM1CON0_C1CH1_LENGTH                               0x1
#define _CM1CON0_C1CH1_MASK                                 0x2
#define _CM1CON0_CCH0_POSN                                  0x0
#define _CM1CON0_CCH0_POSITION                              0x0
#define _CM1CON0_CCH0_SIZE                                  0x1
#define _CM1CON0_CCH0_LENGTH                                0x1
#define _CM1CON0_CCH0_MASK                                  0x1
#define _CM1CON0_CCH01_POSN                                 0x0
#define _CM1CON0_CCH01_POSITION                             0x0
#define _CM1CON0_CCH01_SIZE                                 0x1
#define _CM1CON0_CCH01_LENGTH                               0x1
#define _CM1CON0_CCH01_MASK                                 0x1
#define _CM1CON0_CCH1_POSN                                  0x1
#define _CM1CON0_CCH1_POSITION                              0x1
#define _CM1CON0_CCH1_SIZE                                  0x1
#define _CM1CON0_CCH1_LENGTH                                0x1
#define _CM1CON0_CCH1_MASK                                  0x2
#define _CM1CON0_CCH11_POSN                                 0x1
#define _CM1CON0_CCH11_POSITION                             0x1
#define _CM1CON0_CCH11_SIZE                                 0x1
#define _CM1CON0_CCH11_LENGTH                               0x1
#define _CM1CON0_CCH11_MASK                                 0x2
#define _CM1CON0_COE_POSN                                   0x6
#define _CM1CON0_COE_POSITION                               0x6
#define _CM1CON0_COE_SIZE                                   0x1
#define _CM1CON0_COE_LENGTH                                 0x1
#define _CM1CON0_COE_MASK                                   0x40
#define _CM1CON0_COE1_POSN                                  0x6
#define _CM1CON0_COE1_POSITION                              0x6
#define _CM1CON0_COE1_SIZE                                  0x1
#define _CM1CON0_COE1_LENGTH                                0x1
#define _CM1CON0_COE1_MASK                                  0x40
#define _CM1CON0_CON_POSN                                   0x7
#define _CM1CON0_CON_POSITION                               0x7
#define _CM1CON0_CON_SIZE                                   0x1
#define _CM1CON0_CON_LENGTH                                 0x1
#define _CM1CON0_CON_MASK                                   0x80
#define _CM1CON0_CON1_POSN                                  0x7
#define _CM1CON0_CON1_POSITION                              0x7
#define _CM1CON0_CON1_SIZE                                  0x1
#define _CM1CON0_CON1_LENGTH                                0x1
#define _CM1CON0_CON1_MASK                                  0x80
#define _CM1CON0_CPOL_POSN                                  0x5
#define _CM1CON0_CPOL_POSITION                              0x5
#define _CM1CON0_CPOL_SIZE                                  0x1
#define _CM1CON0_CPOL_LENGTH                                0x1
#define _CM1CON0_CPOL_MASK                                  0x20
#define _CM1CON0_CPOL1_POSN                                 0x5
#define _CM1CON0_CPOL1_POSITION                             0x5
#define _CM1CON0_CPOL1_SIZE                                 0x1
#define _CM1CON0_CPOL1_LENGTH                               0x1
#define _CM1CON0_CPOL1_MASK                                 0x20
#define _CM1CON0_CREF_POSN                                  0x2
#define _CM1CON0_CREF_POSITION                              0x2
#define _CM1CON0_CREF_SIZE                                  0x1
#define _CM1CON0_CREF_LENGTH                                0x1
#define _CM1CON0_CREF_MASK                                  0x4
#define _CM1CON0_CREF1_POSN                                 0x2
#define _CM1CON0_CREF1_POSITION                             0x2
#define _CM1CON0_CREF1_SIZE                                 0x1
#define _CM1CON0_CREF1_LENGTH                               0x1
#define _CM1CON0_CREF1_MASK                                 0x4
#define _CM1CON0_EVPOL0_POSN                                0x3
#define _CM1CON0_EVPOL0_POSITION                            0x3
#define _CM1CON0_EVPOL0_SIZE                                0x1
#define _CM1CON0_EVPOL0_LENGTH                              0x1
#define _CM1CON0_EVPOL0_MASK                                0x8
#define _CM1CON0_EVPOL01_POSN                               0x3
#define _CM1CON0_EVPOL01_POSITION                           0x3
#define _CM1CON0_EVPOL01_SIZE                               0x1
#define _CM1CON0_EVPOL01_LENGTH                             0x1
#define _CM1CON0_EVPOL01_MASK                               0x8
#define _CM1CON0_EVPOL1_POSN                                0x4
#define _CM1CON0_EVPOL1_POSITION                            0x4
#define _CM1CON0_EVPOL1_SIZE                                0x1
#define _CM1CON0_EVPOL1_LENGTH                              0x1
#define _CM1CON0_EVPOL1_MASK                                0x10
#define _CM1CON0_EVPOL11_POSN                               0x4
#define _CM1CON0_EVPOL11_POSITION                           0x4
#define _CM1CON0_EVPOL11_SIZE                               0x1
#define _CM1CON0_EVPOL11_LENGTH                             0x1
#define _CM1CON0_EVPOL11_MASK                               0x10
// alias bitfield definitions
typedef union {
    struct {
        unsigned C1CH                   :2;
        unsigned C1R                    :1;
        unsigned C1SP                   :1;
        unsigned C1POL                  :1;
        unsigned C1OE                   :1;
        unsigned C1OUT                  :1;
        unsigned C1ON                   :1;
    };
    struct {
        unsigned C1CH0                  :1;
        unsigned C1CH1                  :1;
    };
    struct {
        unsigned CCH0                   :1;
    };
    struct {
        unsigned CCH01                  :1;
    };
    struct {
        unsigned                        :1;
        unsigned CCH1                   :1;
    };
    struct {
        unsigned                        :1;
        unsigned CCH11                  :1;
    };
    struct {
        unsigned                        :6;
        unsigned COE                    :1;
    };
    struct {
        unsigned                        :6;
        unsigned COE1                   :1;
    };
    struct {
        unsigned                        :7;
        unsigned CON                    :1;
    };
    struct {
        unsigned                        :7;
        unsigned CON1                   :1;
    };
    struct {
        unsigned                        :5;
        unsigned CPOL                   :1;
    };
    struct {
        unsigned                        :5;
        unsigned CPOL1                  :1;
    };
    struct {
        unsigned                        :2;
        unsigned CREF                   :1;
    };
    struct {
        unsigned                        :2;
        unsigned CREF1                  :1;
    };
    struct {
        unsigned                        :3;
        unsigned EVPOL0                 :1;
    };
    struct {
        unsigned                        :3;
        unsigned EVPOL01                :1;
    };
    struct {
        unsigned                        :4;
        unsigned EVPOL1                 :1;
    };
    struct {
        unsigned                        :4;
        unsigned EVPOL11                :1;
    };
} CM1CONbits_t;
extern volatile CM1CONbits_t CM1CONbits @ 0xF79;
// bitfield macros
#define _CM1CON_C1CH_POSN                                   0x0
#define _CM1CON_C1CH_POSITION                               0x0
#define _CM1CON_C1CH_SIZE                                   0x2
#define _CM1CON_C1CH_LENGTH                                 0x2
#define _CM1CON_C1CH_MASK                                   0x3
#define _CM1CON_C1R_POSN                                    0x2
#define _CM1CON_C1R_POSITION                                0x2
#define _CM1CON_C1R_SIZE                                    0x1
#define _CM1CON_C1R_LENGTH                                  0x1
#define _CM1CON_C1R_MASK                                    0x4
#define _CM1CON_C1SP_POSN                                   0x3
#define _CM1CON_C1SP_POSITION                               0x3
#define _CM1CON_C1SP_SIZE                                   0x1
#define _CM1CON_C1SP_LENGTH                                 0x1
#define _CM1CON_C1SP_MASK                                   0x8
#define _CM1CON_C1POL_POSN                                  0x4
#define _CM1CON_C1POL_POSITION                              0x4
#define _CM1CON_C1POL_SIZE                                  0x1
#define _CM1CON_C1POL_LENGTH                                0x1
#define _CM1CON_C1POL_MASK                                  0x10
#define _CM1CON_C1OE_POSN                                   0x5
#define _CM1CON_C1OE_POSITION                               0x5
#define _CM1CON_C1OE_SIZE                                   0x1
#define _CM1CON_C1OE_LENGTH                                 0x1
#define _CM1CON_C1OE_MASK                                   0x20
#define _CM1CON_C1OUT_POSN                                  0x6
#define _CM1CON_C1OUT_POSITION                              0x6
#define _CM1CON_C1OUT_SIZE                                  0x1
#define _CM1CON_C1OUT_LENGTH                                0x1
#define _CM1CON_C1OUT_MASK                                  0x40
#define _CM1CON_C1ON_POSN                                   0x7
#define _CM1CON_C1ON_POSITION                               0x7
#define _CM1CON_C1ON_SIZE                                   0x1
#define _CM1CON_C1ON_LENGTH                                 0x1
#define _CM1CON_C1ON_MASK                                   0x80
#define _CM1CON_C1CH0_POSN                                  0x0
#define _CM1CON_C1CH0_POSITION                              0x0
#define _CM1CON_C1CH0_SIZE                                  0x1
#define _CM1CON_C1CH0_LENGTH                                0x1
#define _CM1CON_C1CH0_MASK                                  0x1
#define _CM1CON_C1CH1_POSN                                  0x1
#define _CM1CON_C1CH1_POSITION                              0x1
#define _CM1CON_C1CH1_SIZE                                  0x1
#define _CM1CON_C1CH1_LENGTH                                0x1
#define _CM1CON_C1CH1_MASK                                  0x2
#define _CM1CON_CCH0_POSN                                   0x0
#define _CM1CON_CCH0_POSITION                               0x0
#define _CM1CON_CCH0_SIZE                                   0x1
#define _CM1CON_CCH0_LENGTH                                 0x1
#define _CM1CON_CCH0_MASK                                   0x1
#define _CM1CON_CCH01_POSN                                  0x0
#define _CM1CON_CCH01_POSITION                              0x0
#define _CM1CON_CCH01_SIZE                                  0x1
#define _CM1CON_CCH01_LENGTH                                0x1
#define _CM1CON_CCH01_MASK                                  0x1
#define _CM1CON_CCH1_POSN                                   0x1
#define _CM1CON_CCH1_POSITION                               0x1
#define _CM1CON_CCH1_SIZE                                   0x1
#define _CM1CON_CCH1_LENGTH                                 0x1
#define _CM1CON_CCH1_MASK                                   0x2
#define _CM1CON_CCH11_POSN                                  0x1
#define _CM1CON_CCH11_POSITION                              0x1
#define _CM1CON_CCH11_SIZE                                  0x1
#define _CM1CON_CCH11_LENGTH                                0x1
#define _CM1CON_CCH11_MASK                                  0x2
#define _CM1CON_COE_POSN                                    0x6
#define _CM1CON_COE_POSITION                                0x6
#define _CM1CON_COE_SIZE                                    0x1
#define _CM1CON_COE_LENGTH                                  0x1
#define _CM1CON_COE_MASK                                    0x40
#define _CM1CON_COE1_POSN                                   0x6
#define _CM1CON_COE1_POSITION                               0x6
#define _CM1CON_COE1_SIZE                                   0x1
#define _CM1CON_COE1_LENGTH                                 0x1
#define _CM1CON_COE1_MASK                                   0x40
#define _CM1CON_CON_POSN                                    0x7
#define _CM1CON_CON_POSITION                                0x7
#define _CM1CON_CON_SIZE                                    0x1
#define _CM1CON_CON_LENGTH                                  0x1
#define _CM1CON_CON_MASK                                    0x80
#define _CM1CON_CON1_POSN                                   0x7
#define _CM1CON_CON1_POSITION                               0x7
#define _CM1CON_CON1_SIZE                                   0x1
#define _CM1CON_CON1_LENGTH                                 0x1
#define _CM1CON_CON1_MASK                                   0x80
#define _CM1CON_CPOL_POSN                                   0x5
#define _CM1CON_CPOL_POSITION                               0x5
#define _CM1CON_CPOL_SIZE                                   0x1
#define _CM1CON_CPOL_LENGTH                                 0x1
#define _CM1CON_CPOL_MASK                                   0x20
#define _CM1CON_CPOL1_POSN                                  0x5
#define _CM1CON_CPOL1_POSITION                              0x5
#define _CM1CON_CPOL1_SIZE                                  0x1
#define _CM1CON_CPOL1_LENGTH                                0x1
#define _CM1CON_CPOL1_MASK                                  0x20
#define _CM1CON_CREF_POSN                                   0x2
#define _CM1CON_CREF_POSITION                               0x2
#define _CM1CON_CREF_SIZE                                   0x1
#define _CM1CON_CREF_LENGTH                                 0x1
#define _CM1CON_CREF_MASK                                   0x4
#define _CM1CON_CREF1_POSN                                  0x2
#define _CM1CON_CREF1_POSITION                              0x2
#define _CM1CON_CREF1_SIZE                                  0x1
#define _CM1CON_CREF1_LENGTH                                0x1
#define _CM1CON_CREF1_MASK                                  0x4
#define _CM1CON_EVPOL0_POSN                                 0x3
#define _CM1CON_EVPOL0_POSITION                             0x3
#define _CM1CON_EVPOL0_SIZE                                 0x1
#define _CM1CON_EVPOL0_LENGTH                               0x1
#define _CM1CON_EVPOL0_MASK                                 0x8
#define _CM1CON_EVPOL01_POSN                                0x3
#define _CM1CON_EVPOL01_POSITION                            0x3
#define _CM1CON_EVPOL01_SIZE                                0x1
#define _CM1CON_EVPOL01_LENGTH                              0x1
#define _CM1CON_EVPOL01_MASK                                0x8
#define _CM1CON_EVPOL1_POSN                                 0x4
#define _CM1CON_EVPOL1_POSITION                             0x4
#define _CM1CON_EVPOL1_SIZE                                 0x1
#define _CM1CON_EVPOL1_LENGTH                               0x1
#define _CM1CON_EVPOL1_MASK                                 0x10
#define _CM1CON_EVPOL11_POSN                                0x4
#define _CM1CON_EVPOL11_POSITION                            0x4
#define _CM1CON_EVPOL11_SIZE                                0x1
#define _CM1CON_EVPOL11_LENGTH                              0x1
#define _CM1CON_EVPOL11_MASK                                0x10

// Register: PIE4
extern volatile unsigned char           PIE4                @ 0xF7A;
#ifndef _LIB_BUILD
asm("PIE4 equ 0F7Ah");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned CCP3IE                 :1;
        unsigned CCP4IE                 :1;
        unsigned CCP5IE                 :1;
    };
} PIE4bits_t;
extern volatile PIE4bits_t PIE4bits @ 0xF7A;
// bitfield macros
#define _PIE4_CCP3IE_POSN                                   0x0
#define _PIE4_CCP3IE_POSITION                               0x0
#define _PIE4_CCP3IE_SIZE                                   0x1
#define _PIE4_CCP3IE_LENGTH                                 0x1
#define _PIE4_CCP3IE_MASK                                   0x1
#define _PIE4_CCP4IE_POSN                                   0x1
#define _PIE4_CCP4IE_POSITION                               0x1
#define _PIE4_CCP4IE_SIZE                                   0x1
#define _PIE4_CCP4IE_LENGTH                                 0x1
#define _PIE4_CCP4IE_MASK                                   0x2
#define _PIE4_CCP5IE_POSN                                   0x2
#define _PIE4_CCP5IE_POSITION                               0x2
#define _PIE4_CCP5IE_SIZE                                   0x1
#define _PIE4_CCP5IE_LENGTH                                 0x1
#define _PIE4_CCP5IE_MASK                                   0x4

// Register: PIR4
extern volatile unsigned char           PIR4                @ 0xF7B;
#ifndef _LIB_BUILD
asm("PIR4 equ 0F7Bh");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned CCP3IF                 :1;
        unsigned CCP4IF                 :1;
        unsigned CCP5IF                 :1;
    };
} PIR4bits_t;
extern volatile PIR4bits_t PIR4bits @ 0xF7B;
// bitfield macros
#define _PIR4_CCP3IF_POSN                                   0x0
#define _PIR4_CCP3IF_POSITION                               0x0
#define _PIR4_CCP3IF_SIZE                                   0x1
#define _PIR4_CCP3IF_LENGTH                                 0x1
#define _PIR4_CCP3IF_MASK                                   0x1
#define _PIR4_CCP4IF_POSN                                   0x1
#define _PIR4_CCP4IF_POSITION                               0x1
#define _PIR4_CCP4IF_SIZE                                   0x1
#define _PIR4_CCP4IF_LENGTH                                 0x1
#define _PIR4_CCP4IF_MASK                                   0x2
#define _PIR4_CCP5IF_POSN                                   0x2
#define _PIR4_CCP5IF_POSITION                               0x2
#define _PIR4_CCP5IF_SIZE                                   0x1
#define _PIR4_CCP5IF_LENGTH                                 0x1
#define _PIR4_CCP5IF_MASK                                   0x4

// Register: IPR4
extern volatile unsigned char           IPR4                @ 0xF7C;
#ifndef _LIB_BUILD
asm("IPR4 equ 0F7Ch");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned CCP3IP                 :1;
        unsigned CCP4IP                 :1;
        unsigned CCP5IP                 :1;
    };
    struct {
        unsigned CCIP3IP                :1;
    };
} IPR4bits_t;
extern volatile IPR4bits_t IPR4bits @ 0xF7C;
// bitfield macros
#define _IPR4_CCP3IP_POSN                                   0x0
#define _IPR4_CCP3IP_POSITION                               0x0
#define _IPR4_CCP3IP_SIZE                                   0x1
#define _IPR4_CCP3IP_LENGTH                                 0x1
#define _IPR4_CCP3IP_MASK                                   0x1
#define _IPR4_CCP4IP_POSN                                   0x1
#define _IPR4_CCP4IP_POSITION                               0x1
#define _IPR4_CCP4IP_SIZE                                   0x1
#define _IPR4_CCP4IP_LENGTH                                 0x1
#define _IPR4_CCP4IP_MASK                                   0x2
#define _IPR4_CCP5IP_POSN                                   0x2
#define _IPR4_CCP5IP_POSITION                               0x2
#define _IPR4_CCP5IP_SIZE                                   0x1
#define _IPR4_CCP5IP_LENGTH                                 0x1
#define _IPR4_CCP5IP_MASK                                   0x4
#define _IPR4_CCIP3IP_POSN                                  0x0
#define _IPR4_CCIP3IP_POSITION                              0x0
#define _IPR4_CCIP3IP_SIZE                                  0x1
#define _IPR4_CCIP3IP_LENGTH                                0x1
#define _IPR4_CCIP3IP_MASK                                  0x1

// Register: PIE5
extern volatile unsigned char           PIE5                @ 0xF7D;
#ifndef _LIB_BUILD
asm("PIE5 equ 0F7Dh");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned TMR4IE                 :1;
        unsigned TMR5IE                 :1;
        unsigned TMR6IE                 :1;
    };
} PIE5bits_t;
extern volatile PIE5bits_t PIE5bits @ 0xF7D;
// bitfield macros
#define _PIE5_TMR4IE_POSN                                   0x0
#define _PIE5_TMR4IE_POSITION                               0x0
#define _PIE5_TMR4IE_SIZE                                   0x1
#define _PIE5_TMR4IE_LENGTH                                 0x1
#define _PIE5_TMR4IE_MASK                                   0x1
#define _PIE5_TMR5IE_POSN                                   0x1
#define _PIE5_TMR5IE_POSITION                               0x1
#define _PIE5_TMR5IE_SIZE                                   0x1
#define _PIE5_TMR5IE_LENGTH                                 0x1
#define _PIE5_TMR5IE_MASK                                   0x2
#define _PIE5_TMR6IE_POSN                                   0x2
#define _PIE5_TMR6IE_POSITION                               0x2
#define _PIE5_TMR6IE_SIZE                                   0x1
#define _PIE5_TMR6IE_LENGTH                                 0x1
#define _PIE5_TMR6IE_MASK                                   0x4

// Register: PIR5
extern volatile unsigned char           PIR5                @ 0xF7E;
#ifndef _LIB_BUILD
asm("PIR5 equ 0F7Eh");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned TMR4IF                 :1;
        unsigned TMR5IF                 :1;
        unsigned TMR6IF                 :1;
    };
} PIR5bits_t;
extern volatile PIR5bits_t PIR5bits @ 0xF7E;
// bitfield macros
#define _PIR5_TMR4IF_POSN                                   0x0
#define _PIR5_TMR4IF_POSITION                               0x0
#define _PIR5_TMR4IF_SIZE                                   0x1
#define _PIR5_TMR4IF_LENGTH                                 0x1
#define _PIR5_TMR4IF_MASK                                   0x1
#define _PIR5_TMR5IF_POSN                                   0x1
#define _PIR5_TMR5IF_POSITION                               0x1
#define _PIR5_TMR5IF_SIZE                                   0x1
#define _PIR5_TMR5IF_LENGTH                                 0x1
#define _PIR5_TMR5IF_MASK                                   0x2
#define _PIR5_TMR6IF_POSN                                   0x2
#define _PIR5_TMR6IF_POSITION                               0x2
#define _PIR5_TMR6IF_SIZE                                   0x1
#define _PIR5_TMR6IF_LENGTH                                 0x1
#define _PIR5_TMR6IF_MASK                                   0x4

// Register: IPR5
extern volatile unsigned char           IPR5                @ 0xF7F;
#ifndef _LIB_BUILD
asm("IPR5 equ 0F7Fh");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned TMR4IP                 :1;
        unsigned TMR5IP                 :1;
        unsigned TMR6IP                 :1;
    };
    struct {
        unsigned CCH05                  :1;
        unsigned CCH15                  :1;
    };
} IPR5bits_t;
extern volatile IPR5bits_t IPR5bits @ 0xF7F;
// bitfield macros
#define _IPR5_TMR4IP_POSN                                   0x0
#define _IPR5_TMR4IP_POSITION                               0x0
#define _IPR5_TMR4IP_SIZE                                   0x1
#define _IPR5_TMR4IP_LENGTH                                 0x1
#define _IPR5_TMR4IP_MASK                                   0x1
#define _IPR5_TMR5IP_POSN                                   0x1
#define _IPR5_TMR5IP_POSITION                               0x1
#define _IPR5_TMR5IP_SIZE                                   0x1
#define _IPR5_TMR5IP_LENGTH                                 0x1
#define _IPR5_TMR5IP_MASK                                   0x2
#define _IPR5_TMR6IP_POSN                                   0x2
#define _IPR5_TMR6IP_POSITION                               0x2
#define _IPR5_TMR6IP_SIZE                                   0x1
#define _IPR5_TMR6IP_LENGTH                                 0x1
#define _IPR5_TMR6IP_MASK                                   0x4
#define _IPR5_CCH05_POSN                                    0x0
#define _IPR5_CCH05_POSITION                                0x0
#define _IPR5_CCH05_SIZE                                    0x1
#define _IPR5_CCH05_LENGTH                                  0x1
#define _IPR5_CCH05_MASK                                    0x1
#define _IPR5_CCH15_POSN                                    0x1
#define _IPR5_CCH15_POSITION                                0x1
#define _IPR5_CCH15_SIZE                                    0x1
#define _IPR5_CCH15_LENGTH                                  0x1
#define _IPR5_CCH15_MASK                                    0x2

// Register: PORTA
extern volatile unsigned char           PORTA               @ 0xF80;
#ifndef _LIB_BUILD
asm("PORTA equ 0F80h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned RA0                    :1;
        unsigned RA1                    :1;
        unsigned RA2                    :1;
        unsigned RA3                    :1;
        unsigned RA4                    :1;
        unsigned RA5                    :1;
        unsigned RA6                    :1;
        unsigned RA7                    :1;
    };
    struct {
        unsigned AN0                    :1;
        unsigned AN1                    :1;
        unsigned AN2                    :1;
        unsigned AN3                    :1;
        unsigned                        :1;
        unsigned AN4                    :1;
    };
    struct {
        unsigned C12IN0M                :1;
        unsigned C12IN1M                :1;
        unsigned C2INP                  :1;
        unsigned C1INP                  :1;
        unsigned C1OUT                  :1;
        unsigned C2OUT                  :1;
    };
    struct {
        unsigned C12IN0N                :1;
        unsigned C12IN1N                :1;
        unsigned VREFM                  :1;
        unsigned VREFP                  :1;
        unsigned T0CKI                  :1;
        unsigned SS                     :1;
    };
    struct {
        unsigned                        :5;
        unsigned NOT_SS                 :1;
    };
    struct {
        unsigned                        :2;
        unsigned VREFN                  :1;
        unsigned                        :1;
        unsigned SRQ                    :1;
        unsigned nSS                    :1;
    };
    struct {
        unsigned                        :2;
        unsigned CVREF                  :1;
        unsigned                        :1;
        unsigned CCP5                   :1;
        unsigned LVDIN                  :1;
    };
    struct {
        unsigned                        :2;
        unsigned DACOUT                 :1;
        unsigned                        :2;
        unsigned HLVDIN                 :1;
    };
    struct {
        unsigned                        :5;
        unsigned SS1                    :1;
    };
    struct {
        unsigned                        :5;
        unsigned NOT_SS1                :1;
    };
    struct {
        unsigned                        :5;
        unsigned nSS1                   :1;
    };
    struct {
        unsigned                        :5;
        unsigned SRNQ                   :1;
    };
    struct {
        unsigned ULPWUIN                :1;
        unsigned                        :6;
        unsigned RJPU                   :1;
    };
} PORTAbits_t;
extern volatile PORTAbits_t PORTAbits @ 0xF80;
// bitfield macros
#define _PORTA_RA0_POSN                                     0x0
#define _PORTA_RA0_POSITION                                 0x0
#define _PORTA_RA0_SIZE                                     0x1
#define _PORTA_RA0_LENGTH                                   0x1
#define _PORTA_RA0_MASK                                     0x1
#define _PORTA_RA1_POSN                                     0x1
#define _PORTA_RA1_POSITION                                 0x1
#define _PORTA_RA1_SIZE                                     0x1
#define _PORTA_RA1_LENGTH                                   0x1
#define _PORTA_RA1_MASK                                     0x2
#define _PORTA_RA2_POSN                                     0x2
#define _PORTA_RA2_POSITION                                 0x2
#define _PORTA_RA2_SIZE                                     0x1
#define _PORTA_RA2_LENGTH                                   0x1
#define _PORTA_RA2_MASK                                     0x4
#define _PORTA_RA3_POSN                                     0x3
#define _PORTA_RA3_POSITION                                 0x3
#define _PORTA_RA3_SIZE                                     0x1
#define _PORTA_RA3_LENGTH                                   0x1
#define _PORTA_RA3_MASK                                     0x8
#define _PORTA_RA4_POSN                                     0x4
#define _PORTA_RA4_POSITION                                 0x4
#define _PORTA_RA4_SIZE                                     0x1
#define _PORTA_RA4_LENGTH                                   0x1
#define _PORTA_RA4_MASK                                     0x10
#define _PORTA_RA5_POSN                                     0x5
#define _PORTA_RA5_POSITION                                 0x5
#define _PORTA_RA5_SIZE                                     0x1
#define _PORTA_RA5_LENGTH                                   0x1
#define _PORTA_RA5_MASK                                     0x20
#define _PORTA_RA6_POSN                                     0x6
#define _PORTA_RA6_POSITION                                 0x6
#define _PORTA_RA6_SIZE                                     0x1
#define _PORTA_RA6_LENGTH                                   0x1
#define _PORTA_RA6_MASK                                     0x40
#define _PORTA_RA7_POSN                                     0x7
#define _PORTA_RA7_POSITION                                 0x7
#define _PORTA_RA7_SIZE                                     0x1
#define _PORTA_RA7_LENGTH                                   0x1
#define _PORTA_RA7_MASK                                     0x80
#define _PORTA_AN0_POSN                                     0x0
#define _PORTA_AN0_POSITION                                 0x0
#define _PORTA_AN0_SIZE                                     0x1
#define _PORTA_AN0_LENGTH                                   0x1
#define _PORTA_AN0_MASK                                     0x1
#define _PORTA_AN1_POSN                                     0x1
#define _PORTA_AN1_POSITION                                 0x1
#define _PORTA_AN1_SIZE                                     0x1
#define _PORTA_AN1_LENGTH                                   0x1
#define _PORTA_AN1_MASK                                     0x2
#define _PORTA_AN2_POSN                                     0x2
#define _PORTA_AN2_POSITION                                 0x2
#define _PORTA_AN2_SIZE                                     0x1
#define _PORTA_AN2_LENGTH                                   0x1
#define _PORTA_AN2_MASK                                     0x4
#define _PORTA_AN3_POSN                                     0x3
#define _PORTA_AN3_POSITION                                 0x3
#define _PORTA_AN3_SIZE                                     0x1
#define _PORTA_AN3_LENGTH                                   0x1
#define _PORTA_AN3_MASK                                     0x8
#define _PORTA_AN4_POSN                                     0x5
#define _PORTA_AN4_POSITION                                 0x5
#define _PORTA_AN4_SIZE                                     0x1
#define _PORTA_AN4_LENGTH                                   0x1
#define _PORTA_AN4_MASK                                     0x20
#define _PORTA_C12IN0M_POSN                                 0x0
#define _PORTA_C12IN0M_POSITION                             0x0
#define _PORTA_C12IN0M_SIZE                                 0x1
#define _PORTA_C12IN0M_LENGTH                               0x1
#define _PORTA_C12IN0M_MASK                                 0x1
#define _PORTA_C12IN1M_POSN                                 0x1
#define _PORTA_C12IN1M_POSITION                             0x1
#define _PORTA_C12IN1M_SIZE                                 0x1
#define _PORTA_C12IN1M_LENGTH                               0x1
#define _PORTA_C12IN1M_MASK                                 0x2
#define _PORTA_C2INP_POSN                                   0x2
#define _PORTA_C2INP_POSITION                               0x2
#define _PORTA_C2INP_SIZE                                   0x1
#define _PORTA_C2INP_LENGTH                                 0x1
#define _PORTA_C2INP_MASK                                   0x4
#define _PORTA_C1INP_POSN                                   0x3
#define _PORTA_C1INP_POSITION                               0x3
#define _PORTA_C1INP_SIZE                                   0x1
#define _PORTA_C1INP_LENGTH                                 0x1
#define _PORTA_C1INP_MASK                                   0x8
#define _PORTA_C1OUT_POSN                                   0x4
#define _PORTA_C1OUT_POSITION                               0x4
#define _PORTA_C1OUT_SIZE                                   0x1
#define _PORTA_C1OUT_LENGTH                                 0x1
#define _PORTA_C1OUT_MASK                                   0x10
#define _PORTA_C2OUT_POSN                                   0x5
#define _PORTA_C2OUT_POSITION                               0x5
#define _PORTA_C2OUT_SIZE                                   0x1
#define _PORTA_C2OUT_LENGTH                                 0x1
#define _PORTA_C2OUT_MASK                                   0x20
#define _PORTA_C12IN0N_POSN                                 0x0
#define _PORTA_C12IN0N_POSITION                             0x0
#define _PORTA_C12IN0N_SIZE                                 0x1
#define _PORTA_C12IN0N_LENGTH                               0x1
#define _PORTA_C12IN0N_MASK                                 0x1
#define _PORTA_C12IN1N_POSN                                 0x1
#define _PORTA_C12IN1N_POSITION                             0x1
#define _PORTA_C12IN1N_SIZE                                 0x1
#define _PORTA_C12IN1N_LENGTH                               0x1
#define _PORTA_C12IN1N_MASK                                 0x2
#define _PORTA_VREFM_POSN                                   0x2
#define _PORTA_VREFM_POSITION                               0x2
#define _PORTA_VREFM_SIZE                                   0x1
#define _PORTA_VREFM_LENGTH                                 0x1
#define _PORTA_VREFM_MASK                                   0x4
#define _PORTA_VREFP_POSN                                   0x3
#define _PORTA_VREFP_POSITION                               0x3
#define _PORTA_VREFP_SIZE                                   0x1
#define _PORTA_VREFP_LENGTH                                 0x1
#define _PORTA_VREFP_MASK                                   0x8
#define _PORTA_T0CKI_POSN                                   0x4
#define _PORTA_T0CKI_POSITION                               0x4
#define _PORTA_T0CKI_SIZE                                   0x1
#define _PORTA_T0CKI_LENGTH                                 0x1
#define _PORTA_T0CKI_MASK                                   0x10
#define _PORTA_SS_POSN                                      0x5
#define _PORTA_SS_POSITION                                  0x5
#define _PORTA_SS_SIZE                                      0x1
#define _PORTA_SS_LENGTH                                    0x1
#define _PORTA_SS_MASK                                      0x20
#define _PORTA_NOT_SS_POSN                                  0x5
#define _PORTA_NOT_SS_POSITION                              0x5
#define _PORTA_NOT_SS_SIZE                                  0x1
#define _PORTA_NOT_SS_LENGTH                                0x1
#define _PORTA_NOT_SS_MASK                                  0x20
#define _PORTA_VREFN_POSN                                   0x2
#define _PORTA_VREFN_POSITION                               0x2
#define _PORTA_VREFN_SIZE                                   0x1
#define _PORTA_VREFN_LENGTH                                 0x1
#define _PORTA_VREFN_MASK                                   0x4
#define _PORTA_SRQ_POSN                                     0x4
#define _PORTA_SRQ_POSITION                                 0x4
#define _PORTA_SRQ_SIZE                                     0x1
#define _PORTA_SRQ_LENGTH                                   0x1
#define _PORTA_SRQ_MASK                                     0x10
#define _PORTA_nSS_POSN                                     0x5
#define _PORTA_nSS_POSITION                                 0x5
#define _PORTA_nSS_SIZE                                     0x1
#define _PORTA_nSS_LENGTH                                   0x1
#define _PORTA_nSS_MASK                                     0x20
#define _PORTA_CVREF_POSN                                   0x2
#define _PORTA_CVREF_POSITION                               0x2
#define _PORTA_CVREF_SIZE                                   0x1
#define _PORTA_CVREF_LENGTH                                 0x1
#define _PORTA_CVREF_MASK                                   0x4
#define _PORTA_CCP5_POSN                                    0x4
#define _PORTA_CCP5_POSITION                                0x4
#define _PORTA_CCP5_SIZE                                    0x1
#define _PORTA_CCP5_LENGTH                                  0x1
#define _PORTA_CCP5_MASK                                    0x10
#define _PORTA_LVDIN_POSN                                   0x5
#define _PORTA_LVDIN_POSITION                               0x5
#define _PORTA_LVDIN_SIZE                                   0x1
#define _PORTA_LVDIN_LENGTH                                 0x1
#define _PORTA_LVDIN_MASK                                   0x20
#define _PORTA_DACOUT_POSN                                  0x2
#define _PORTA_DACOUT_POSITION                              0x2
#define _PORTA_DACOUT_SIZE                                  0x1
#define _PORTA_DACOUT_LENGTH                                0x1
#define _PORTA_DACOUT_MASK                                  0x4
#define _PORTA_HLVDIN_POSN                                  0x5
#define _PORTA_HLVDIN_POSITION                              0x5
#define _PORTA_HLVDIN_SIZE                                  0x1
#define _PORTA_HLVDIN_LENGTH                                0x1
#define _PORTA_HLVDIN_MASK                                  0x20
#define _PORTA_SS1_POSN                                     0x5
#define _PORTA_SS1_POSITION                                 0x5
#define _PORTA_SS1_SIZE                                     0x1
#define _PORTA_SS1_LENGTH                                   0x1
#define _PORTA_SS1_MASK                                     0x20
#define _PORTA_NOT_SS1_POSN                                 0x5
#define _PORTA_NOT_SS1_POSITION                             0x5
#define _PORTA_NOT_SS1_SIZE                                 0x1
#define _PORTA_NOT_SS1_LENGTH                               0x1
#define _PORTA_NOT_SS1_MASK                                 0x20
#define _PORTA_nSS1_POSN                                    0x5
#define _PORTA_nSS1_POSITION                                0x5
#define _PORTA_nSS1_SIZE                                    0x1
#define _PORTA_nSS1_LENGTH                                  0x1
#define _PORTA_nSS1_MASK                                    0x20
#define _PORTA_SRNQ_POSN                                    0x5
#define _PORTA_SRNQ_POSITION                                0x5
#define _PORTA_SRNQ_SIZE                                    0x1
#define _PORTA_SRNQ_LENGTH                                  0x1
#define _PORTA_SRNQ_MASK                                    0x20
#define _PORTA_ULPWUIN_POSN                                 0x0
#define _PORTA_ULPWUIN_POSITION                             0x0
#define _PORTA_ULPWUIN_SIZE                                 0x1
#define _PORTA_ULPWUIN_LENGTH                               0x1
#define _PORTA_ULPWUIN_MASK                                 0x1
#define _PORTA_RJPU_POSN                                    0x7
#define _PORTA_RJPU_POSITION                                0x7
#define _PORTA_RJPU_SIZE                                    0x1
#define _PORTA_RJPU_LENGTH                                  0x1
#define _PORTA_RJPU_MASK                                    0x80

// Register: PORTB
extern volatile unsigned char           PORTB               @ 0xF81;
#ifndef _LIB_BUILD
asm("PORTB equ 0F81h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned RB0                    :1;
        unsigned RB1                    :1;
        unsigned RB2                    :1;
        unsigned RB3                    :1;
        unsigned RB4                    :1;
        unsigned RB5                    :1;
        unsigned RB6                    :1;
        unsigned RB7                    :1;
    };
    struct {
        unsigned INT0                   :1;
        unsigned INT1                   :1;
        unsigned INT2                   :1;
        unsigned CCP2                   :1;
        unsigned KBI0                   :1;
        unsigned KBI1                   :1;
        unsigned KBI2                   :1;
        unsigned KBI3                   :1;
    };
    struct {
        unsigned AN12                   :1;
        unsigned AN10                   :1;
        unsigned AN8                    :1;
        unsigned AN9                    :1;
        unsigned AN11                   :1;
        unsigned AN13                   :1;
        unsigned TX2                    :1;
        unsigned RX2                    :1;
    };
    struct {
        unsigned FLT0                   :1;
        unsigned C12IN3M                :1;
        unsigned P1B                    :1;
        unsigned C12IN2M                :1;
        unsigned T5G                    :1;
        unsigned T1G                    :1;
        unsigned CK2                    :1;
        unsigned DT2                    :1;
    };
    struct {
        unsigned SRI                    :1;
        unsigned C12IN3N                :1;
        unsigned CTED1                  :1;
        unsigned C12IN2N                :1;
        unsigned P1D                    :1;
        unsigned CCP3                   :1;
        unsigned PGC                    :1;
        unsigned PGD                    :1;
    };
    struct {
        unsigned CCP4                   :1;
        unsigned P1C                    :1;
        unsigned SDA2                   :1;
        unsigned CTED2                  :1;
        unsigned                        :1;
        unsigned T3CKI                  :1;
    };
    struct {
        unsigned SS2                    :1;
        unsigned SCL2                   :1;
        unsigned SDI2                   :1;
        unsigned P2A                    :1;
        unsigned                        :1;
        unsigned P3A                    :1;
    };
    struct {
        unsigned NOT_SS2                :1;
    };
    struct {
        unsigned nSS2                   :1;
        unsigned SCK2                   :1;
        unsigned                        :1;
        unsigned SDO2                   :1;
        unsigned                        :1;
        unsigned P2B                    :1;
    };
    struct {
        unsigned                        :3;
        unsigned CCP2_PA2               :1;
    };
} PORTBbits_t;
extern volatile PORTBbits_t PORTBbits @ 0xF81;
// bitfield macros
#define _PORTB_RB0_POSN                                     0x0
#define _PORTB_RB0_POSITION                                 0x0
#define _PORTB_RB0_SIZE                                     0x1
#define _PORTB_RB0_LENGTH                                   0x1
#define _PORTB_RB0_MASK                                     0x1
#define _PORTB_RB1_POSN                                     0x1
#define _PORTB_RB1_POSITION                                 0x1
#define _PORTB_RB1_SIZE                                     0x1
#define _PORTB_RB1_LENGTH                                   0x1
#define _PORTB_RB1_MASK                                     0x2
#define _PORTB_RB2_POSN                                     0x2
#define _PORTB_RB2_POSITION                                 0x2
#define _PORTB_RB2_SIZE                                     0x1
#define _PORTB_RB2_LENGTH                                   0x1
#define _PORTB_RB2_MASK                                     0x4
#define _PORTB_RB3_POSN                                     0x3
#define _PORTB_RB3_POSITION                                 0x3
#define _PORTB_RB3_SIZE                                     0x1
#define _PORTB_RB3_LENGTH                                   0x1
#define _PORTB_RB3_MASK                                     0x8
#define _PORTB_RB4_POSN                                     0x4
#define _PORTB_RB4_POSITION                                 0x4
#define _PORTB_RB4_SIZE                                     0x1
#define _PORTB_RB4_LENGTH                                   0x1
#define _PORTB_RB4_MASK                                     0x10
#define _PORTB_RB5_POSN                                     0x5
#define _PORTB_RB5_POSITION                                 0x5
#define _PORTB_RB5_SIZE                                     0x1
#define _PORTB_RB5_LENGTH                                   0x1
#define _PORTB_RB5_MASK                                     0x20
#define _PORTB_RB6_POSN                                     0x6
#define _PORTB_RB6_POSITION                                 0x6
#define _PORTB_RB6_SIZE                                     0x1
#define _PORTB_RB6_LENGTH                                   0x1
#define _PORTB_RB6_MASK                                     0x40
#define _PORTB_RB7_POSN                                     0x7
#define _PORTB_RB7_POSITION                                 0x7
#define _PORTB_RB7_SIZE                                     0x1
#define _PORTB_RB7_LENGTH                                   0x1
#define _PORTB_RB7_MASK                                     0x80
#define _PORTB_INT0_POSN                                    0x0
#define _PORTB_INT0_POSITION                                0x0
#define _PORTB_INT0_SIZE                                    0x1
#define _PORTB_INT0_LENGTH                                  0x1
#define _PORTB_INT0_MASK                                    0x1
#define _PORTB_INT1_POSN                                    0x1
#define _PORTB_INT1_POSITION                                0x1
#define _PORTB_INT1_SIZE                                    0x1
#define _PORTB_INT1_LENGTH                                  0x1
#define _PORTB_INT1_MASK                                    0x2
#define _PORTB_INT2_POSN                                    0x2
#define _PORTB_INT2_POSITION                                0x2
#define _PORTB_INT2_SIZE                                    0x1
#define _PORTB_INT2_LENGTH                                  0x1
#define _PORTB_INT2_MASK                                    0x4
#define _PORTB_CCP2_POSN                                    0x3
#define _PORTB_CCP2_POSITION                                0x3
#define _PORTB_CCP2_SIZE                                    0x1
#define _PORTB_CCP2_LENGTH                                  0x1
#define _PORTB_CCP2_MASK                                    0x8
#define _PORTB_KBI0_POSN                                    0x4
#define _PORTB_KBI0_POSITION                                0x4
#define _PORTB_KBI0_SIZE                                    0x1
#define _PORTB_KBI0_LENGTH                                  0x1
#define _PORTB_KBI0_MASK                                    0x10
#define _PORTB_KBI1_POSN                                    0x5
#define _PORTB_KBI1_POSITION                                0x5
#define _PORTB_KBI1_SIZE                                    0x1
#define _PORTB_KBI1_LENGTH                                  0x1
#define _PORTB_KBI1_MASK                                    0x20
#define _PORTB_KBI2_POSN                                    0x6
#define _PORTB_KBI2_POSITION                                0x6
#define _PORTB_KBI2_SIZE                                    0x1
#define _PORTB_KBI2_LENGTH                                  0x1
#define _PORTB_KBI2_MASK                                    0x40
#define _PORTB_KBI3_POSN                                    0x7
#define _PORTB_KBI3_POSITION                                0x7
#define _PORTB_KBI3_SIZE                                    0x1
#define _PORTB_KBI3_LENGTH                                  0x1
#define _PORTB_KBI3_MASK                                    0x80
#define _PORTB_AN12_POSN                                    0x0
#define _PORTB_AN12_POSITION                                0x0
#define _PORTB_AN12_SIZE                                    0x1
#define _PORTB_AN12_LENGTH                                  0x1
#define _PORTB_AN12_MASK                                    0x1
#define _PORTB_AN10_POSN                                    0x1
#define _PORTB_AN10_POSITION                                0x1
#define _PORTB_AN10_SIZE                                    0x1
#define _PORTB_AN10_LENGTH                                  0x1
#define _PORTB_AN10_MASK                                    0x2
#define _PORTB_AN8_POSN                                     0x2
#define _PORTB_AN8_POSITION                                 0x2
#define _PORTB_AN8_SIZE                                     0x1
#define _PORTB_AN8_LENGTH                                   0x1
#define _PORTB_AN8_MASK                                     0x4
#define _PORTB_AN9_POSN                                     0x3
#define _PORTB_AN9_POSITION                                 0x3
#define _PORTB_AN9_SIZE                                     0x1
#define _PORTB_AN9_LENGTH                                   0x1
#define _PORTB_AN9_MASK                                     0x8
#define _PORTB_AN11_POSN                                    0x4
#define _PORTB_AN11_POSITION                                0x4
#define _PORTB_AN11_SIZE                                    0x1
#define _PORTB_AN11_LENGTH                                  0x1
#define _PORTB_AN11_MASK                                    0x10
#define _PORTB_AN13_POSN                                    0x5
#define _PORTB_AN13_POSITION                                0x5
#define _PORTB_AN13_SIZE                                    0x1
#define _PORTB_AN13_LENGTH                                  0x1
#define _PORTB_AN13_MASK                                    0x20
#define _PORTB_TX2_POSN                                     0x6
#define _PORTB_TX2_POSITION                                 0x6
#define _PORTB_TX2_SIZE                                     0x1
#define _PORTB_TX2_LENGTH                                   0x1
#define _PORTB_TX2_MASK                                     0x40
#define _PORTB_RX2_POSN                                     0x7
#define _PORTB_RX2_POSITION                                 0x7
#define _PORTB_RX2_SIZE                                     0x1
#define _PORTB_RX2_LENGTH                                   0x1
#define _PORTB_RX2_MASK                                     0x80
#define _PORTB_FLT0_POSN                                    0x0
#define _PORTB_FLT0_POSITION                                0x0
#define _PORTB_FLT0_SIZE                                    0x1
#define _PORTB_FLT0_LENGTH                                  0x1
#define _PORTB_FLT0_MASK                                    0x1
#define _PORTB_C12IN3M_POSN                                 0x1
#define _PORTB_C12IN3M_POSITION                             0x1
#define _PORTB_C12IN3M_SIZE                                 0x1
#define _PORTB_C12IN3M_LENGTH                               0x1
#define _PORTB_C12IN3M_MASK                                 0x2
#define _PORTB_P1B_POSN                                     0x2
#define _PORTB_P1B_POSITION                                 0x2
#define _PORTB_P1B_SIZE                                     0x1
#define _PORTB_P1B_LENGTH                                   0x1
#define _PORTB_P1B_MASK                                     0x4
#define _PORTB_C12IN2M_POSN                                 0x3
#define _PORTB_C12IN2M_POSITION                             0x3
#define _PORTB_C12IN2M_SIZE                                 0x1
#define _PORTB_C12IN2M_LENGTH                               0x1
#define _PORTB_C12IN2M_MASK                                 0x8
#define _PORTB_T5G_POSN                                     0x4
#define _PORTB_T5G_POSITION                                 0x4
#define _PORTB_T5G_SIZE                                     0x1
#define _PORTB_T5G_LENGTH                                   0x1
#define _PORTB_T5G_MASK                                     0x10
#define _PORTB_T1G_POSN                                     0x5
#define _PORTB_T1G_POSITION                                 0x5
#define _PORTB_T1G_SIZE                                     0x1
#define _PORTB_T1G_LENGTH                                   0x1
#define _PORTB_T1G_MASK                                     0x20
#define _PORTB_CK2_POSN                                     0x6
#define _PORTB_CK2_POSITION                                 0x6
#define _PORTB_CK2_SIZE                                     0x1
#define _PORTB_CK2_LENGTH                                   0x1
#define _PORTB_CK2_MASK                                     0x40
#define _PORTB_DT2_POSN                                     0x7
#define _PORTB_DT2_POSITION                                 0x7
#define _PORTB_DT2_SIZE                                     0x1
#define _PORTB_DT2_LENGTH                                   0x1
#define _PORTB_DT2_MASK                                     0x80
#define _PORTB_SRI_POSN                                     0x0
#define _PORTB_SRI_POSITION                                 0x0
#define _PORTB_SRI_SIZE                                     0x1
#define _PORTB_SRI_LENGTH                                   0x1
#define _PORTB_SRI_MASK                                     0x1
#define _PORTB_C12IN3N_POSN                                 0x1
#define _PORTB_C12IN3N_POSITION                             0x1
#define _PORTB_C12IN3N_SIZE                                 0x1
#define _PORTB_C12IN3N_LENGTH                               0x1
#define _PORTB_C12IN3N_MASK                                 0x2
#define _PORTB_CTED1_POSN                                   0x2
#define _PORTB_CTED1_POSITION                               0x2
#define _PORTB_CTED1_SIZE                                   0x1
#define _PORTB_CTED1_LENGTH                                 0x1
#define _PORTB_CTED1_MASK                                   0x4
#define _PORTB_C12IN2N_POSN                                 0x3
#define _PORTB_C12IN2N_POSITION                             0x3
#define _PORTB_C12IN2N_SIZE                                 0x1
#define _PORTB_C12IN2N_LENGTH                               0x1
#define _PORTB_C12IN2N_MASK                                 0x8
#define _PORTB_P1D_POSN                                     0x4
#define _PORTB_P1D_POSITION                                 0x4
#define _PORTB_P1D_SIZE                                     0x1
#define _PORTB_P1D_LENGTH                                   0x1
#define _PORTB_P1D_MASK                                     0x10
#define _PORTB_CCP3_POSN                                    0x5
#define _PORTB_CCP3_POSITION                                0x5
#define _PORTB_CCP3_SIZE                                    0x1
#define _PORTB_CCP3_LENGTH                                  0x1
#define _PORTB_CCP3_MASK                                    0x20
#define _PORTB_PGC_POSN                                     0x6
#define _PORTB_PGC_POSITION                                 0x6
#define _PORTB_PGC_SIZE                                     0x1
#define _PORTB_PGC_LENGTH                                   0x1
#define _PORTB_PGC_MASK                                     0x40
#define _PORTB_PGD_POSN                                     0x7
#define _PORTB_PGD_POSITION                                 0x7
#define _PORTB_PGD_SIZE                                     0x1
#define _PORTB_PGD_LENGTH                                   0x1
#define _PORTB_PGD_MASK                                     0x80
#define _PORTB_CCP4_POSN                                    0x0
#define _PORTB_CCP4_POSITION                                0x0
#define _PORTB_CCP4_SIZE                                    0x1
#define _PORTB_CCP4_LENGTH                                  0x1
#define _PORTB_CCP4_MASK                                    0x1
#define _PORTB_P1C_POSN                                     0x1
#define _PORTB_P1C_POSITION                                 0x1
#define _PORTB_P1C_SIZE                                     0x1
#define _PORTB_P1C_LENGTH                                   0x1
#define _PORTB_P1C_MASK                                     0x2
#define _PORTB_SDA2_POSN                                    0x2
#define _PORTB_SDA2_POSITION                                0x2
#define _PORTB_SDA2_SIZE                                    0x1
#define _PORTB_SDA2_LENGTH                                  0x1
#define _PORTB_SDA2_MASK                                    0x4
#define _PORTB_CTED2_POSN                                   0x3
#define _PORTB_CTED2_POSITION                               0x3
#define _PORTB_CTED2_SIZE                                   0x1
#define _PORTB_CTED2_LENGTH                                 0x1
#define _PORTB_CTED2_MASK                                   0x8
#define _PORTB_T3CKI_POSN                                   0x5
#define _PORTB_T3CKI_POSITION                               0x5
#define _PORTB_T3CKI_SIZE                                   0x1
#define _PORTB_T3CKI_LENGTH                                 0x1
#define _PORTB_T3CKI_MASK                                   0x20
#define _PORTB_SS2_POSN                                     0x0
#define _PORTB_SS2_POSITION                                 0x0
#define _PORTB_SS2_SIZE                                     0x1
#define _PORTB_SS2_LENGTH                                   0x1
#define _PORTB_SS2_MASK                                     0x1
#define _PORTB_SCL2_POSN                                    0x1
#define _PORTB_SCL2_POSITION                                0x1
#define _PORTB_SCL2_SIZE                                    0x1
#define _PORTB_SCL2_LENGTH                                  0x1
#define _PORTB_SCL2_MASK                                    0x2
#define _PORTB_SDI2_POSN                                    0x2
#define _PORTB_SDI2_POSITION                                0x2
#define _PORTB_SDI2_SIZE                                    0x1
#define _PORTB_SDI2_LENGTH                                  0x1
#define _PORTB_SDI2_MASK                                    0x4
#define _PORTB_P2A_POSN                                     0x3
#define _PORTB_P2A_POSITION                                 0x3
#define _PORTB_P2A_SIZE                                     0x1
#define _PORTB_P2A_LENGTH                                   0x1
#define _PORTB_P2A_MASK                                     0x8
#define _PORTB_P3A_POSN                                     0x5
#define _PORTB_P3A_POSITION                                 0x5
#define _PORTB_P3A_SIZE                                     0x1
#define _PORTB_P3A_LENGTH                                   0x1
#define _PORTB_P3A_MASK                                     0x20
#define _PORTB_NOT_SS2_POSN                                 0x0
#define _PORTB_NOT_SS2_POSITION                             0x0
#define _PORTB_NOT_SS2_SIZE                                 0x1
#define _PORTB_NOT_SS2_LENGTH                               0x1
#define _PORTB_NOT_SS2_MASK                                 0x1
#define _PORTB_nSS2_POSN                                    0x0
#define _PORTB_nSS2_POSITION                                0x0
#define _PORTB_nSS2_SIZE                                    0x1
#define _PORTB_nSS2_LENGTH                                  0x1
#define _PORTB_nSS2_MASK                                    0x1
#define _PORTB_SCK2_POSN                                    0x1
#define _PORTB_SCK2_POSITION                                0x1
#define _PORTB_SCK2_SIZE                                    0x1
#define _PORTB_SCK2_LENGTH                                  0x1
#define _PORTB_SCK2_MASK                                    0x2
#define _PORTB_SDO2_POSN                                    0x3
#define _PORTB_SDO2_POSITION                                0x3
#define _PORTB_SDO2_SIZE                                    0x1
#define _PORTB_SDO2_LENGTH                                  0x1
#define _PORTB_SDO2_MASK                                    0x8
#define _PORTB_P2B_POSN                                     0x5
#define _PORTB_P2B_POSITION                                 0x5
#define _PORTB_P2B_SIZE                                     0x1
#define _PORTB_P2B_LENGTH                                   0x1
#define _PORTB_P2B_MASK                                     0x20
#define _PORTB_CCP2_PA2_POSN                                0x3
#define _PORTB_CCP2_PA2_POSITION                            0x3
#define _PORTB_CCP2_PA2_SIZE                                0x1
#define _PORTB_CCP2_PA2_LENGTH                              0x1
#define _PORTB_CCP2_PA2_MASK                                0x8

// Register: PORTC
extern volatile unsigned char           PORTC               @ 0xF82;
#ifndef _LIB_BUILD
asm("PORTC equ 0F82h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned RC0                    :1;
        unsigned RC1                    :1;
        unsigned RC2                    :1;
        unsigned RC3                    :1;
        unsigned RC4                    :1;
        unsigned RC5                    :1;
        unsigned RC6                    :1;
        unsigned RC7                    :1;
    };
    struct {
        unsigned T1OSO                  :1;
        unsigned T1OSI                  :1;
        unsigned T5CKI                  :1;
        unsigned SCK                    :1;
        unsigned SDI                    :1;
        unsigned SDO                    :1;
        unsigned TX                     :1;
        unsigned RX                     :1;
    };
    struct {
        unsigned P2B                    :1;
        unsigned P2A                    :1;
        unsigned P1A                    :1;
        unsigned SCL                    :1;
        unsigned SDA                    :1;
        unsigned                        :1;
        unsigned CK                     :1;
        unsigned DT                     :1;
    };
    struct {
        unsigned T1CKI                  :1;
        unsigned CCP2                   :1;
        unsigned CCP1                   :1;
        unsigned SCK1                   :1;
        unsigned SDI1                   :1;
        unsigned SDO1                   :1;
        unsigned TX1                    :1;
        unsigned RX1                    :1;
    };
    struct {
        unsigned T3CKI                  :1;
        unsigned                        :1;
        unsigned CTPLS                  :1;
        unsigned SCL1                   :1;
        unsigned SDA1                   :1;
        unsigned                        :1;
        unsigned CK1                    :1;
        unsigned DT1                    :1;
    };
    struct {
        unsigned T3G                    :1;
        unsigned                        :1;
        unsigned AN14                   :1;
        unsigned AN15                   :1;
        unsigned AN16                   :1;
        unsigned AN17                   :1;
        unsigned AN18                   :1;
        unsigned AN19                   :1;
    };
    struct {
        unsigned                        :6;
        unsigned CCP3                   :1;
        unsigned P3B                    :1;
    };
    struct {
        unsigned                        :6;
        unsigned P3A                    :1;
    };
    struct {
        unsigned                        :1;
        unsigned PA2                    :1;
        unsigned PA1                    :1;
    };
} PORTCbits_t;
extern volatile PORTCbits_t PORTCbits @ 0xF82;
// bitfield macros
#define _PORTC_RC0_POSN                                     0x0
#define _PORTC_RC0_POSITION                                 0x0
#define _PORTC_RC0_SIZE                                     0x1
#define _PORTC_RC0_LENGTH                                   0x1
#define _PORTC_RC0_MASK                                     0x1
#define _PORTC_RC1_POSN                                     0x1
#define _PORTC_RC1_POSITION                                 0x1
#define _PORTC_RC1_SIZE                                     0x1
#define _PORTC_RC1_LENGTH                                   0x1
#define _PORTC_RC1_MASK                                     0x2
#define _PORTC_RC2_POSN                                     0x2
#define _PORTC_RC2_POSITION                                 0x2
#define _PORTC_RC2_SIZE                                     0x1
#define _PORTC_RC2_LENGTH                                   0x1
#define _PORTC_RC2_MASK                                     0x4
#define _PORTC_RC3_POSN                                     0x3
#define _PORTC_RC3_POSITION                                 0x3
#define _PORTC_RC3_SIZE                                     0x1
#define _PORTC_RC3_LENGTH                                   0x1
#define _PORTC_RC3_MASK                                     0x8
#define _PORTC_RC4_POSN                                     0x4
#define _PORTC_RC4_POSITION                                 0x4
#define _PORTC_RC4_SIZE                                     0x1
#define _PORTC_RC4_LENGTH                                   0x1
#define _PORTC_RC4_MASK                                     0x10
#define _PORTC_RC5_POSN                                     0x5
#define _PORTC_RC5_POSITION                                 0x5
#define _PORTC_RC5_SIZE                                     0x1
#define _PORTC_RC5_LENGTH                                   0x1
#define _PORTC_RC5_MASK                                     0x20
#define _PORTC_RC6_POSN                                     0x6
#define _PORTC_RC6_POSITION                                 0x6
#define _PORTC_RC6_SIZE                                     0x1
#define _PORTC_RC6_LENGTH                                   0x1
#define _PORTC_RC6_MASK                                     0x40
#define _PORTC_RC7_POSN                                     0x7
#define _PORTC_RC7_POSITION                                 0x7
#define _PORTC_RC7_SIZE                                     0x1
#define _PORTC_RC7_LENGTH                                   0x1
#define _PORTC_RC7_MASK                                     0x80
#define _PORTC_T1OSO_POSN                                   0x0
#define _PORTC_T1OSO_POSITION                               0x0
#define _PORTC_T1OSO_SIZE                                   0x1
#define _PORTC_T1OSO_LENGTH                                 0x1
#define _PORTC_T1OSO_MASK                                   0x1
#define _PORTC_T1OSI_POSN                                   0x1
#define _PORTC_T1OSI_POSITION                               0x1
#define _PORTC_T1OSI_SIZE                                   0x1
#define _PORTC_T1OSI_LENGTH                                 0x1
#define _PORTC_T1OSI_MASK                                   0x2
#define _PORTC_T5CKI_POSN                                   0x2
#define _PORTC_T5CKI_POSITION                               0x2
#define _PORTC_T5CKI_SIZE                                   0x1
#define _PORTC_T5CKI_LENGTH                                 0x1
#define _PORTC_T5CKI_MASK                                   0x4
#define _PORTC_SCK_POSN                                     0x3
#define _PORTC_SCK_POSITION                                 0x3
#define _PORTC_SCK_SIZE                                     0x1
#define _PORTC_SCK_LENGTH                                   0x1
#define _PORTC_SCK_MASK                                     0x8
#define _PORTC_SDI_POSN                                     0x4
#define _PORTC_SDI_POSITION                                 0x4
#define _PORTC_SDI_SIZE                                     0x1
#define _PORTC_SDI_LENGTH                                   0x1
#define _PORTC_SDI_MASK                                     0x10
#define _PORTC_SDO_POSN                                     0x5
#define _PORTC_SDO_POSITION                                 0x5
#define _PORTC_SDO_SIZE                                     0x1
#define _PORTC_SDO_LENGTH                                   0x1
#define _PORTC_SDO_MASK                                     0x20
#define _PORTC_TX_POSN                                      0x6
#define _PORTC_TX_POSITION                                  0x6
#define _PORTC_TX_SIZE                                      0x1
#define _PORTC_TX_LENGTH                                    0x1
#define _PORTC_TX_MASK                                      0x40
#define _PORTC_RX_POSN                                      0x7
#define _PORTC_RX_POSITION                                  0x7
#define _PORTC_RX_SIZE                                      0x1
#define _PORTC_RX_LENGTH                                    0x1
#define _PORTC_RX_MASK                                      0x80
#define _PORTC_P2B_POSN                                     0x0
#define _PORTC_P2B_POSITION                                 0x0
#define _PORTC_P2B_SIZE                                     0x1
#define _PORTC_P2B_LENGTH                                   0x1
#define _PORTC_P2B_MASK                                     0x1
#define _PORTC_P2A_POSN                                     0x1
#define _PORTC_P2A_POSITION                                 0x1
#define _PORTC_P2A_SIZE                                     0x1
#define _PORTC_P2A_LENGTH                                   0x1
#define _PORTC_P2A_MASK                                     0x2
#define _PORTC_P1A_POSN                                     0x2
#define _PORTC_P1A_POSITION                                 0x2
#define _PORTC_P1A_SIZE                                     0x1
#define _PORTC_P1A_LENGTH                                   0x1
#define _PORTC_P1A_MASK                                     0x4
#define _PORTC_SCL_POSN                                     0x3
#define _PORTC_SCL_POSITION                                 0x3
#define _PORTC_SCL_SIZE                                     0x1
#define _PORTC_SCL_LENGTH                                   0x1
#define _PORTC_SCL_MASK                                     0x8
#define _PORTC_SDA_POSN                                     0x4
#define _PORTC_SDA_POSITION                                 0x4
#define _PORTC_SDA_SIZE                                     0x1
#define _PORTC_SDA_LENGTH                                   0x1
#define _PORTC_SDA_MASK                                     0x10
#define _PORTC_CK_POSN                                      0x6
#define _PORTC_CK_POSITION                                  0x6
#define _PORTC_CK_SIZE                                      0x1
#define _PORTC_CK_LENGTH                                    0x1
#define _PORTC_CK_MASK                                      0x40
#define _PORTC_DT_POSN                                      0x7
#define _PORTC_DT_POSITION                                  0x7
#define _PORTC_DT_SIZE                                      0x1
#define _PORTC_DT_LENGTH                                    0x1
#define _PORTC_DT_MASK                                      0x80
#define _PORTC_T1CKI_POSN                                   0x0
#define _PORTC_T1CKI_POSITION                               0x0
#define _PORTC_T1CKI_SIZE                                   0x1
#define _PORTC_T1CKI_LENGTH                                 0x1
#define _PORTC_T1CKI_MASK                                   0x1
#define _PORTC_CCP2_POSN                                    0x1
#define _PORTC_CCP2_POSITION                                0x1
#define _PORTC_CCP2_SIZE                                    0x1
#define _PORTC_CCP2_LENGTH                                  0x1
#define _PORTC_CCP2_MASK                                    0x2
#define _PORTC_CCP1_POSN                                    0x2
#define _PORTC_CCP1_POSITION                                0x2
#define _PORTC_CCP1_SIZE                                    0x1
#define _PORTC_CCP1_LENGTH                                  0x1
#define _PORTC_CCP1_MASK                                    0x4
#define _PORTC_SCK1_POSN                                    0x3
#define _PORTC_SCK1_POSITION                                0x3
#define _PORTC_SCK1_SIZE                                    0x1
#define _PORTC_SCK1_LENGTH                                  0x1
#define _PORTC_SCK1_MASK                                    0x8
#define _PORTC_SDI1_POSN                                    0x4
#define _PORTC_SDI1_POSITION                                0x4
#define _PORTC_SDI1_SIZE                                    0x1
#define _PORTC_SDI1_LENGTH                                  0x1
#define _PORTC_SDI1_MASK                                    0x10
#define _PORTC_SDO1_POSN                                    0x5
#define _PORTC_SDO1_POSITION                                0x5
#define _PORTC_SDO1_SIZE                                    0x1
#define _PORTC_SDO1_LENGTH                                  0x1
#define _PORTC_SDO1_MASK                                    0x20
#define _PORTC_TX1_POSN                                     0x6
#define _PORTC_TX1_POSITION                                 0x6
#define _PORTC_TX1_SIZE                                     0x1
#define _PORTC_TX1_LENGTH                                   0x1
#define _PORTC_TX1_MASK                                     0x40
#define _PORTC_RX1_POSN                                     0x7
#define _PORTC_RX1_POSITION                                 0x7
#define _PORTC_RX1_SIZE                                     0x1
#define _PORTC_RX1_LENGTH                                   0x1
#define _PORTC_RX1_MASK                                     0x80
#define _PORTC_T3CKI_POSN                                   0x0
#define _PORTC_T3CKI_POSITION                               0x0
#define _PORTC_T3CKI_SIZE                                   0x1
#define _PORTC_T3CKI_LENGTH                                 0x1
#define _PORTC_T3CKI_MASK                                   0x1
#define _PORTC_CTPLS_POSN                                   0x2
#define _PORTC_CTPLS_POSITION                               0x2
#define _PORTC_CTPLS_SIZE                                   0x1
#define _PORTC_CTPLS_LENGTH                                 0x1
#define _PORTC_CTPLS_MASK                                   0x4
#define _PORTC_SCL1_POSN                                    0x3
#define _PORTC_SCL1_POSITION                                0x3
#define _PORTC_SCL1_SIZE                                    0x1
#define _PORTC_SCL1_LENGTH                                  0x1
#define _PORTC_SCL1_MASK                                    0x8
#define _PORTC_SDA1_POSN                                    0x4
#define _PORTC_SDA1_POSITION                                0x4
#define _PORTC_SDA1_SIZE                                    0x1
#define _PORTC_SDA1_LENGTH                                  0x1
#define _PORTC_SDA1_MASK                                    0x10
#define _PORTC_CK1_POSN                                     0x6
#define _PORTC_CK1_POSITION                                 0x6
#define _PORTC_CK1_SIZE                                     0x1
#define _PORTC_CK1_LENGTH                                   0x1
#define _PORTC_CK1_MASK                                     0x40
#define _PORTC_DT1_POSN                                     0x7
#define _PORTC_DT1_POSITION                                 0x7
#define _PORTC_DT1_SIZE                                     0x1
#define _PORTC_DT1_LENGTH                                   0x1
#define _PORTC_DT1_MASK                                     0x80
#define _PORTC_T3G_POSN                                     0x0
#define _PORTC_T3G_POSITION                                 0x0
#define _PORTC_T3G_SIZE                                     0x1
#define _PORTC_T3G_LENGTH                                   0x1
#define _PORTC_T3G_MASK                                     0x1
#define _PORTC_AN14_POSN                                    0x2
#define _PORTC_AN14_POSITION                                0x2
#define _PORTC_AN14_SIZE                                    0x1
#define _PORTC_AN14_LENGTH                                  0x1
#define _PORTC_AN14_MASK                                    0x4
#define _PORTC_AN15_POSN                                    0x3
#define _PORTC_AN15_POSITION                                0x3
#define _PORTC_AN15_SIZE                                    0x1
#define _PORTC_AN15_LENGTH                                  0x1
#define _PORTC_AN15_MASK                                    0x8
#define _PORTC_AN16_POSN                                    0x4
#define _PORTC_AN16_POSITION                                0x4
#define _PORTC_AN16_SIZE                                    0x1
#define _PORTC_AN16_LENGTH                                  0x1
#define _PORTC_AN16_MASK                                    0x10
#define _PORTC_AN17_POSN                                    0x5
#define _PORTC_AN17_POSITION                                0x5
#define _PORTC_AN17_SIZE                                    0x1
#define _PORTC_AN17_LENGTH                                  0x1
#define _PORTC_AN17_MASK                                    0x20
#define _PORTC_AN18_POSN                                    0x6
#define _PORTC_AN18_POSITION                                0x6
#define _PORTC_AN18_SIZE                                    0x1
#define _PORTC_AN18_LENGTH                                  0x1
#define _PORTC_AN18_MASK                                    0x40
#define _PORTC_AN19_POSN                                    0x7
#define _PORTC_AN19_POSITION                                0x7
#define _PORTC_AN19_SIZE                                    0x1
#define _PORTC_AN19_LENGTH                                  0x1
#define _PORTC_AN19_MASK                                    0x80
#define _PORTC_CCP3_POSN                                    0x6
#define _PORTC_CCP3_POSITION                                0x6
#define _PORTC_CCP3_SIZE                                    0x1
#define _PORTC_CCP3_LENGTH                                  0x1
#define _PORTC_CCP3_MASK                                    0x40
#define _PORTC_P3B_POSN                                     0x7
#define _PORTC_P3B_POSITION                                 0x7
#define _PORTC_P3B_SIZE                                     0x1
#define _PORTC_P3B_LENGTH                                   0x1
#define _PORTC_P3B_MASK                                     0x80
#define _PORTC_P3A_POSN                                     0x6
#define _PORTC_P3A_POSITION                                 0x6
#define _PORTC_P3A_SIZE                                     0x1
#define _PORTC_P3A_LENGTH                                   0x1
#define _PORTC_P3A_MASK                                     0x40
#define _PORTC_PA2_POSN                                     0x1
#define _PORTC_PA2_POSITION                                 0x1
#define _PORTC_PA2_SIZE                                     0x1
#define _PORTC_PA2_LENGTH                                   0x1
#define _PORTC_PA2_MASK                                     0x2
#define _PORTC_PA1_POSN                                     0x2
#define _PORTC_PA1_POSITION                                 0x2
#define _PORTC_PA1_SIZE                                     0x1
#define _PORTC_PA1_LENGTH                                   0x1
#define _PORTC_PA1_MASK                                     0x4

// Register: PORTE
extern volatile unsigned char           PORTE               @ 0xF84;
#ifndef _LIB_BUILD
asm("PORTE equ 0F84h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned                        :3;
        unsigned RE3                    :1;
    };
    struct {
        unsigned                        :3;
        unsigned MCLR                   :1;
    };
    struct {
        unsigned                        :3;
        unsigned NOT_MCLR               :1;
    };
    struct {
        unsigned                        :3;
        unsigned nMCLR                  :1;
    };
    struct {
        unsigned                        :3;
        unsigned VPP                    :1;
    };
    struct {
        unsigned                        :3;
        unsigned CCP9E                  :1;
    };
    struct {
        unsigned                        :3;
        unsigned PC3E                   :1;
    };
} PORTEbits_t;
extern volatile PORTEbits_t PORTEbits @ 0xF84;
// bitfield macros
#define _PORTE_RE3_POSN                                     0x3
#define _PORTE_RE3_POSITION                                 0x3
#define _PORTE_RE3_SIZE                                     0x1
#define _PORTE_RE3_LENGTH                                   0x1
#define _PORTE_RE3_MASK                                     0x8
#define _PORTE_MCLR_POSN                                    0x3
#define _PORTE_MCLR_POSITION                                0x3
#define _PORTE_MCLR_SIZE                                    0x1
#define _PORTE_MCLR_LENGTH                                  0x1
#define _PORTE_MCLR_MASK                                    0x8
#define _PORTE_NOT_MCLR_POSN                                0x3
#define _PORTE_NOT_MCLR_POSITION                            0x3
#define _PORTE_NOT_MCLR_SIZE                                0x1
#define _PORTE_NOT_MCLR_LENGTH                              0x1
#define _PORTE_NOT_MCLR_MASK                                0x8
#define _PORTE_nMCLR_POSN                                   0x3
#define _PORTE_nMCLR_POSITION                               0x3
#define _PORTE_nMCLR_SIZE                                   0x1
#define _PORTE_nMCLR_LENGTH                                 0x1
#define _PORTE_nMCLR_MASK                                   0x8
#define _PORTE_VPP_POSN                                     0x3
#define _PORTE_VPP_POSITION                                 0x3
#define _PORTE_VPP_SIZE                                     0x1
#define _PORTE_VPP_LENGTH                                   0x1
#define _PORTE_VPP_MASK                                     0x8
#define _PORTE_CCP9E_POSN                                   0x3
#define _PORTE_CCP9E_POSITION                               0x3
#define _PORTE_CCP9E_SIZE                                   0x1
#define _PORTE_CCP9E_LENGTH                                 0x1
#define _PORTE_CCP9E_MASK                                   0x8
#define _PORTE_PC3E_POSN                                    0x3
#define _PORTE_PC3E_POSITION                                0x3
#define _PORTE_PC3E_SIZE                                    0x1
#define _PORTE_PC3E_LENGTH                                  0x1
#define _PORTE_PC3E_MASK                                    0x8

// Register: LATA
extern volatile unsigned char           LATA                @ 0xF89;
#ifndef _LIB_BUILD
asm("LATA equ 0F89h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned LATA0                  :1;
        unsigned LATA1                  :1;
        unsigned LATA2                  :1;
        unsigned LATA3                  :1;
        unsigned LATA4                  :1;
        unsigned LATA5                  :1;
        unsigned LATA6                  :1;
        unsigned LATA7                  :1;
    };
    struct {
        unsigned LA0                    :1;
        unsigned LA1                    :1;
        unsigned LA2                    :1;
        unsigned LA3                    :1;
        unsigned LA4                    :1;
        unsigned LA5                    :1;
        unsigned LA6                    :1;
        unsigned LA7                    :1;
    };
} LATAbits_t;
extern volatile LATAbits_t LATAbits @ 0xF89;
// bitfield macros
#define _LATA_LATA0_POSN                                    0x0
#define _LATA_LATA0_POSITION                                0x0
#define _LATA_LATA0_SIZE                                    0x1
#define _LATA_LATA0_LENGTH                                  0x1
#define _LATA_LATA0_MASK                                    0x1
#define _LATA_LATA1_POSN                                    0x1
#define _LATA_LATA1_POSITION                                0x1
#define _LATA_LATA1_SIZE                                    0x1
#define _LATA_LATA1_LENGTH                                  0x1
#define _LATA_LATA1_MASK                                    0x2
#define _LATA_LATA2_POSN                                    0x2
#define _LATA_LATA2_POSITION                                0x2
#define _LATA_LATA2_SIZE                                    0x1
#define _LATA_LATA2_LENGTH                                  0x1
#define _LATA_LATA2_MASK                                    0x4
#define _LATA_LATA3_POSN                                    0x3
#define _LATA_LATA3_POSITION                                0x3
#define _LATA_LATA3_SIZE                                    0x1
#define _LATA_LATA3_LENGTH                                  0x1
#define _LATA_LATA3_MASK                                    0x8
#define _LATA_LATA4_POSN                                    0x4
#define _LATA_LATA4_POSITION                                0x4
#define _LATA_LATA4_SIZE                                    0x1
#define _LATA_LATA4_LENGTH                                  0x1
#define _LATA_LATA4_MASK                                    0x10
#define _LATA_LATA5_POSN                                    0x5
#define _LATA_LATA5_POSITION                                0x5
#define _LATA_LATA5_SIZE                                    0x1
#define _LATA_LATA5_LENGTH                                  0x1
#define _LATA_LATA5_MASK                                    0x20
#define _LATA_LATA6_POSN                                    0x6
#define _LATA_LATA6_POSITION                                0x6
#define _LATA_LATA6_SIZE                                    0x1
#define _LATA_LATA6_LENGTH                                  0x1
#define _LATA_LATA6_MASK                                    0x40
#define _LATA_LATA7_POSN                                    0x7
#define _LATA_LATA7_POSITION                                0x7
#define _LATA_LATA7_SIZE                                    0x1
#define _LATA_LATA7_LENGTH                                  0x1
#define _LATA_LATA7_MASK                                    0x80
#define _LATA_LA0_POSN                                      0x0
#define _LATA_LA0_POSITION                                  0x0
#define _LATA_LA0_SIZE                                      0x1
#define _LATA_LA0_LENGTH                                    0x1
#define _LATA_LA0_MASK                                      0x1
#define _LATA_LA1_POSN                                      0x1
#define _LATA_LA1_POSITION                                  0x1
#define _LATA_LA1_SIZE                                      0x1
#define _LATA_LA1_LENGTH                                    0x1
#define _LATA_LA1_MASK                                      0x2
#define _LATA_LA2_POSN                                      0x2
#define _LATA_LA2_POSITION                                  0x2
#define _LATA_LA2_SIZE                                      0x1
#define _LATA_LA2_LENGTH                                    0x1
#define _LATA_LA2_MASK                                      0x4
#define _LATA_LA3_POSN                                      0x3
#define _LATA_LA3_POSITION                                  0x3
#define _LATA_LA3_SIZE                                      0x1
#define _LATA_LA3_LENGTH                                    0x1
#define _LATA_LA3_MASK                                      0x8
#define _LATA_LA4_POSN                                      0x4
#define _LATA_LA4_POSITION                                  0x4
#define _LATA_LA4_SIZE                                      0x1
#define _LATA_LA4_LENGTH                                    0x1
#define _LATA_LA4_MASK                                      0x10
#define _LATA_LA5_POSN                                      0x5
#define _LATA_LA5_POSITION                                  0x5
#define _LATA_LA5_SIZE                                      0x1
#define _LATA_LA5_LENGTH                                    0x1
#define _LATA_LA5_MASK                                      0x20
#define _LATA_LA6_POSN                                      0x6
#define _LATA_LA6_POSITION                                  0x6
#define _LATA_LA6_SIZE                                      0x1
#define _LATA_LA6_LENGTH                                    0x1
#define _LATA_LA6_MASK                                      0x40
#define _LATA_LA7_POSN                                      0x7
#define _LATA_LA7_POSITION                                  0x7
#define _LATA_LA7_SIZE                                      0x1
#define _LATA_LA7_LENGTH                                    0x1
#define _LATA_LA7_MASK                                      0x80

// Register: LATB
extern volatile unsigned char           LATB                @ 0xF8A;
#ifndef _LIB_BUILD
asm("LATB equ 0F8Ah");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned LATB0                  :1;
        unsigned LATB1                  :1;
        unsigned LATB2                  :1;
        unsigned LATB3                  :1;
        unsigned LATB4                  :1;
        unsigned LATB5                  :1;
        unsigned LATB6                  :1;
        unsigned LATB7                  :1;
    };
    struct {
        unsigned LB0                    :1;
        unsigned LB1                    :1;
        unsigned LB2                    :1;
        unsigned LB3                    :1;
        unsigned LB4                    :1;
        unsigned LB5                    :1;
        unsigned LB6                    :1;
        unsigned LB7                    :1;
    };
} LATBbits_t;
extern volatile LATBbits_t LATBbits @ 0xF8A;
// bitfield macros
#define _LATB_LATB0_POSN                                    0x0
#define _LATB_LATB0_POSITION                                0x0
#define _LATB_LATB0_SIZE                                    0x1
#define _LATB_LATB0_LENGTH                                  0x1
#define _LATB_LATB0_MASK                                    0x1
#define _LATB_LATB1_POSN                                    0x1
#define _LATB_LATB1_POSITION                                0x1
#define _LATB_LATB1_SIZE                                    0x1
#define _LATB_LATB1_LENGTH                                  0x1
#define _LATB_LATB1_MASK                                    0x2
#define _LATB_LATB2_POSN                                    0x2
#define _LATB_LATB2_POSITION                                0x2
#define _LATB_LATB2_SIZE                                    0x1
#define _LATB_LATB2_LENGTH                                  0x1
#define _LATB_LATB2_MASK                                    0x4
#define _LATB_LATB3_POSN                                    0x3
#define _LATB_LATB3_POSITION                                0x3
#define _LATB_LATB3_SIZE                                    0x1
#define _LATB_LATB3_LENGTH                                  0x1
#define _LATB_LATB3_MASK                                    0x8
#define _LATB_LATB4_POSN                                    0x4
#define _LATB_LATB4_POSITION                                0x4
#define _LATB_LATB4_SIZE                                    0x1
#define _LATB_LATB4_LENGTH                                  0x1
#define _LATB_LATB4_MASK                                    0x10
#define _LATB_LATB5_POSN                                    0x5
#define _LATB_LATB5_POSITION                                0x5
#define _LATB_LATB5_SIZE                                    0x1
#define _LATB_LATB5_LENGTH                                  0x1
#define _LATB_LATB5_MASK                                    0x20
#define _LATB_LATB6_POSN                                    0x6
#define _LATB_LATB6_POSITION                                0x6
#define _LATB_LATB6_SIZE                                    0x1
#define _LATB_LATB6_LENGTH                                  0x1
#define _LATB_LATB6_MASK                                    0x40
#define _LATB_LATB7_POSN                                    0x7
#define _LATB_LATB7_POSITION                                0x7
#define _LATB_LATB7_SIZE                                    0x1
#define _LATB_LATB7_LENGTH                                  0x1
#define _LATB_LATB7_MASK                                    0x80
#define _LATB_LB0_POSN                                      0x0
#define _LATB_LB0_POSITION                                  0x0
#define _LATB_LB0_SIZE                                      0x1
#define _LATB_LB0_LENGTH                                    0x1
#define _LATB_LB0_MASK                                      0x1
#define _LATB_LB1_POSN                                      0x1
#define _LATB_LB1_POSITION                                  0x1
#define _LATB_LB1_SIZE                                      0x1
#define _LATB_LB1_LENGTH                                    0x1
#define _LATB_LB1_MASK                                      0x2
#define _LATB_LB2_POSN                                      0x2
#define _LATB_LB2_POSITION                                  0x2
#define _LATB_LB2_SIZE                                      0x1
#define _LATB_LB2_LENGTH                                    0x1
#define _LATB_LB2_MASK                                      0x4
#define _LATB_LB3_POSN                                      0x3
#define _LATB_LB3_POSITION                                  0x3
#define _LATB_LB3_SIZE                                      0x1
#define _LATB_LB3_LENGTH                                    0x1
#define _LATB_LB3_MASK                                      0x8
#define _LATB_LB4_POSN                                      0x4
#define _LATB_LB4_POSITION                                  0x4
#define _LATB_LB4_SIZE                                      0x1
#define _LATB_LB4_LENGTH                                    0x1
#define _LATB_LB4_MASK                                      0x10
#define _LATB_LB5_POSN                                      0x5
#define _LATB_LB5_POSITION                                  0x5
#define _LATB_LB5_SIZE                                      0x1
#define _LATB_LB5_LENGTH                                    0x1
#define _LATB_LB5_MASK                                      0x20
#define _LATB_LB6_POSN                                      0x6
#define _LATB_LB6_POSITION                                  0x6
#define _LATB_LB6_SIZE                                      0x1
#define _LATB_LB6_LENGTH                                    0x1
#define _LATB_LB6_MASK                                      0x40
#define _LATB_LB7_POSN                                      0x7
#define _LATB_LB7_POSITION                                  0x7
#define _LATB_LB7_SIZE                                      0x1
#define _LATB_LB7_LENGTH                                    0x1
#define _LATB_LB7_MASK                                      0x80

// Register: LATC
extern volatile unsigned char           LATC                @ 0xF8B;
#ifndef _LIB_BUILD
asm("LATC equ 0F8Bh");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned LATC0                  :1;
        unsigned LATC1                  :1;
        unsigned LATC2                  :1;
        unsigned LATC3                  :1;
        unsigned LATC4                  :1;
        unsigned LATC5                  :1;
        unsigned LATC6                  :1;
        unsigned LATC7                  :1;
    };
    struct {
        unsigned LC0                    :1;
        unsigned LC1                    :1;
        unsigned LC2                    :1;
        unsigned LC3                    :1;
        unsigned LC4                    :1;
        unsigned LC5                    :1;
        unsigned LC6                    :1;
        unsigned LC7                    :1;
    };
} LATCbits_t;
extern volatile LATCbits_t LATCbits @ 0xF8B;
// bitfield macros
#define _LATC_LATC0_POSN                                    0x0
#define _LATC_LATC0_POSITION                                0x0
#define _LATC_LATC0_SIZE                                    0x1
#define _LATC_LATC0_LENGTH                                  0x1
#define _LATC_LATC0_MASK                                    0x1
#define _LATC_LATC1_POSN                                    0x1
#define _LATC_LATC1_POSITION                                0x1
#define _LATC_LATC1_SIZE                                    0x1
#define _LATC_LATC1_LENGTH                                  0x1
#define _LATC_LATC1_MASK                                    0x2
#define _LATC_LATC2_POSN                                    0x2
#define _LATC_LATC2_POSITION                                0x2
#define _LATC_LATC2_SIZE                                    0x1
#define _LATC_LATC2_LENGTH                                  0x1
#define _LATC_LATC2_MASK                                    0x4
#define _LATC_LATC3_POSN                                    0x3
#define _LATC_LATC3_POSITION                                0x3
#define _LATC_LATC3_SIZE                                    0x1
#define _LATC_LATC3_LENGTH                                  0x1
#define _LATC_LATC3_MASK                                    0x8
#define _LATC_LATC4_POSN                                    0x4
#define _LATC_LATC4_POSITION                                0x4
#define _LATC_LATC4_SIZE                                    0x1
#define _LATC_LATC4_LENGTH                                  0x1
#define _LATC_LATC4_MASK                                    0x10
#define _LATC_LATC5_POSN                                    0x5
#define _LATC_LATC5_POSITION                                0x5
#define _LATC_LATC5_SIZE                                    0x1
#define _LATC_LATC5_LENGTH                                  0x1
#define _LATC_LATC5_MASK                                    0x20
#define _LATC_LATC6_POSN                                    0x6
#define _LATC_LATC6_POSITION                                0x6
#define _LATC_LATC6_SIZE                                    0x1
#define _LATC_LATC6_LENGTH                                  0x1
#define _LATC_LATC6_MASK                                    0x40
#define _LATC_LATC7_POSN                                    0x7
#define _LATC_LATC7_POSITION                                0x7
#define _LATC_LATC7_SIZE                                    0x1
#define _LATC_LATC7_LENGTH                                  0x1
#define _LATC_LATC7_MASK                                    0x80
#define _LATC_LC0_POSN                                      0x0
#define _LATC_LC0_POSITION                                  0x0
#define _LATC_LC0_SIZE                                      0x1
#define _LATC_LC0_LENGTH                                    0x1
#define _LATC_LC0_MASK                                      0x1
#define _LATC_LC1_POSN                                      0x1
#define _LATC_LC1_POSITION                                  0x1
#define _LATC_LC1_SIZE                                      0x1
#define _LATC_LC1_LENGTH                                    0x1
#define _LATC_LC1_MASK                                      0x2
#define _LATC_LC2_POSN                                      0x2
#define _LATC_LC2_POSITION                                  0x2
#define _LATC_LC2_SIZE                                      0x1
#define _LATC_LC2_LENGTH                                    0x1
#define _LATC_LC2_MASK                                      0x4
#define _LATC_LC3_POSN                                      0x3
#define _LATC_LC3_POSITION                                  0x3
#define _LATC_LC3_SIZE                                      0x1
#define _LATC_LC3_LENGTH                                    0x1
#define _LATC_LC3_MASK                                      0x8
#define _LATC_LC4_POSN                                      0x4
#define _LATC_LC4_POSITION                                  0x4
#define _LATC_LC4_SIZE                                      0x1
#define _LATC_LC4_LENGTH                                    0x1
#define _LATC_LC4_MASK                                      0x10
#define _LATC_LC5_POSN                                      0x5
#define _LATC_LC5_POSITION                                  0x5
#define _LATC_LC5_SIZE                                      0x1
#define _LATC_LC5_LENGTH                                    0x1
#define _LATC_LC5_MASK                                      0x20
#define _LATC_LC6_POSN                                      0x6
#define _LATC_LC6_POSITION                                  0x6
#define _LATC_LC6_SIZE                                      0x1
#define _LATC_LC6_LENGTH                                    0x1
#define _LATC_LC6_MASK                                      0x40
#define _LATC_LC7_POSN                                      0x7
#define _LATC_LC7_POSITION                                  0x7
#define _LATC_LC7_SIZE                                      0x1
#define _LATC_LC7_LENGTH                                    0x1
#define _LATC_LC7_MASK                                      0x80

// Register: TRISA
extern volatile unsigned char           TRISA               @ 0xF92;
#ifndef _LIB_BUILD
asm("TRISA equ 0F92h");
#endif
// aliases
extern volatile unsigned char           DDRA                @ 0xF92;
#ifndef _LIB_BUILD
asm("DDRA equ 0F92h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned TRISA0                 :1;
        unsigned TRISA1                 :1;
        unsigned TRISA2                 :1;
        unsigned TRISA3                 :1;
        unsigned TRISA4                 :1;
        unsigned TRISA5                 :1;
        unsigned TRISA6                 :1;
        unsigned TRISA7                 :1;
    };
    struct {
        unsigned RA0                    :1;
        unsigned RA1                    :1;
        unsigned RA2                    :1;
        unsigned RA3                    :1;
        unsigned RA4                    :1;
        unsigned RA5                    :1;
        unsigned RA6                    :1;
        unsigned RA7                    :1;
    };
} TRISAbits_t;
extern volatile TRISAbits_t TRISAbits @ 0xF92;
// bitfield macros
#define _TRISA_TRISA0_POSN                                  0x0
#define _TRISA_TRISA0_POSITION                              0x0
#define _TRISA_TRISA0_SIZE                                  0x1
#define _TRISA_TRISA0_LENGTH                                0x1
#define _TRISA_TRISA0_MASK                                  0x1
#define _TRISA_TRISA1_POSN                                  0x1
#define _TRISA_TRISA1_POSITION                              0x1
#define _TRISA_TRISA1_SIZE                                  0x1
#define _TRISA_TRISA1_LENGTH                                0x1
#define _TRISA_TRISA1_MASK                                  0x2
#define _TRISA_TRISA2_POSN                                  0x2
#define _TRISA_TRISA2_POSITION                              0x2
#define _TRISA_TRISA2_SIZE                                  0x1
#define _TRISA_TRISA2_LENGTH                                0x1
#define _TRISA_TRISA2_MASK                                  0x4
#define _TRISA_TRISA3_POSN                                  0x3
#define _TRISA_TRISA3_POSITION                              0x3
#define _TRISA_TRISA3_SIZE                                  0x1
#define _TRISA_TRISA3_LENGTH                                0x1
#define _TRISA_TRISA3_MASK                                  0x8
#define _TRISA_TRISA4_POSN                                  0x4
#define _TRISA_TRISA4_POSITION                              0x4
#define _TRISA_TRISA4_SIZE                                  0x1
#define _TRISA_TRISA4_LENGTH                                0x1
#define _TRISA_TRISA4_MASK                                  0x10
#define _TRISA_TRISA5_POSN                                  0x5
#define _TRISA_TRISA5_POSITION                              0x5
#define _TRISA_TRISA5_SIZE                                  0x1
#define _TRISA_TRISA5_LENGTH                                0x1
#define _TRISA_TRISA5_MASK                                  0x20
#define _TRISA_TRISA6_POSN                                  0x6
#define _TRISA_TRISA6_POSITION                              0x6
#define _TRISA_TRISA6_SIZE                                  0x1
#define _TRISA_TRISA6_LENGTH                                0x1
#define _TRISA_TRISA6_MASK                                  0x40
#define _TRISA_TRISA7_POSN                                  0x7
#define _TRISA_TRISA7_POSITION                              0x7
#define _TRISA_TRISA7_SIZE                                  0x1
#define _TRISA_TRISA7_LENGTH                                0x1
#define _TRISA_TRISA7_MASK                                  0x80
#define _TRISA_RA0_POSN                                     0x0
#define _TRISA_RA0_POSITION                                 0x0
#define _TRISA_RA0_SIZE                                     0x1
#define _TRISA_RA0_LENGTH                                   0x1
#define _TRISA_RA0_MASK                                     0x1
#define _TRISA_RA1_POSN                                     0x1
#define _TRISA_RA1_POSITION                                 0x1
#define _TRISA_RA1_SIZE                                     0x1
#define _TRISA_RA1_LENGTH                                   0x1
#define _TRISA_RA1_MASK                                     0x2
#define _TRISA_RA2_POSN                                     0x2
#define _TRISA_RA2_POSITION                                 0x2
#define _TRISA_RA2_SIZE                                     0x1
#define _TRISA_RA2_LENGTH                                   0x1
#define _TRISA_RA2_MASK                                     0x4
#define _TRISA_RA3_POSN                                     0x3
#define _TRISA_RA3_POSITION                                 0x3
#define _TRISA_RA3_SIZE                                     0x1
#define _TRISA_RA3_LENGTH                                   0x1
#define _TRISA_RA3_MASK                                     0x8
#define _TRISA_RA4_POSN                                     0x4
#define _TRISA_RA4_POSITION                                 0x4
#define _TRISA_RA4_SIZE                                     0x1
#define _TRISA_RA4_LENGTH                                   0x1
#define _TRISA_RA4_MASK                                     0x10
#define _TRISA_RA5_POSN                                     0x5
#define _TRISA_RA5_POSITION                                 0x5
#define _TRISA_RA5_SIZE                                     0x1
#define _TRISA_RA5_LENGTH                                   0x1
#define _TRISA_RA5_MASK                                     0x20
#define _TRISA_RA6_POSN                                     0x6
#define _TRISA_RA6_POSITION                                 0x6
#define _TRISA_RA6_SIZE                                     0x1
#define _TRISA_RA6_LENGTH                                   0x1
#define _TRISA_RA6_MASK                                     0x40
#define _TRISA_RA7_POSN                                     0x7
#define _TRISA_RA7_POSITION                                 0x7
#define _TRISA_RA7_SIZE                                     0x1
#define _TRISA_RA7_LENGTH                                   0x1
#define _TRISA_RA7_MASK                                     0x80
// alias bitfield definitions
typedef union {
    struct {
        unsigned TRISA0                 :1;
        unsigned TRISA1                 :1;
        unsigned TRISA2                 :1;
        unsigned TRISA3                 :1;
        unsigned TRISA4                 :1;
        unsigned TRISA5                 :1;
        unsigned TRISA6                 :1;
        unsigned TRISA7                 :1;
    };
    struct {
        unsigned RA0                    :1;
        unsigned RA1                    :1;
        unsigned RA2                    :1;
        unsigned RA3                    :1;
        unsigned RA4                    :1;
        unsigned RA5                    :1;
        unsigned RA6                    :1;
        unsigned RA7                    :1;
    };
} DDRAbits_t;
extern volatile DDRAbits_t DDRAbits @ 0xF92;
// bitfield macros
#define _DDRA_TRISA0_POSN                                   0x0
#define _DDRA_TRISA0_POSITION                               0x0
#define _DDRA_TRISA0_SIZE                                   0x1
#define _DDRA_TRISA0_LENGTH                                 0x1
#define _DDRA_TRISA0_MASK                                   0x1
#define _DDRA_TRISA1_POSN                                   0x1
#define _DDRA_TRISA1_POSITION                               0x1
#define _DDRA_TRISA1_SIZE                                   0x1
#define _DDRA_TRISA1_LENGTH                                 0x1
#define _DDRA_TRISA1_MASK                                   0x2
#define _DDRA_TRISA2_POSN                                   0x2
#define _DDRA_TRISA2_POSITION                               0x2
#define _DDRA_TRISA2_SIZE                                   0x1
#define _DDRA_TRISA2_LENGTH                                 0x1
#define _DDRA_TRISA2_MASK                                   0x4
#define _DDRA_TRISA3_POSN                                   0x3
#define _DDRA_TRISA3_POSITION                               0x3
#define _DDRA_TRISA3_SIZE                                   0x1
#define _DDRA_TRISA3_LENGTH                                 0x1
#define _DDRA_TRISA3_MASK                                   0x8
#define _DDRA_TRISA4_POSN                                   0x4
#define _DDRA_TRISA4_POSITION                               0x4
#define _DDRA_TRISA4_SIZE                                   0x1
#define _DDRA_TRISA4_LENGTH                                 0x1
#define _DDRA_TRISA4_MASK                                   0x10
#define _DDRA_TRISA5_POSN                                   0x5
#define _DDRA_TRISA5_POSITION                               0x5
#define _DDRA_TRISA5_SIZE                                   0x1
#define _DDRA_TRISA5_LENGTH                                 0x1
#define _DDRA_TRISA5_MASK                                   0x20
#define _DDRA_TRISA6_POSN                                   0x6
#define _DDRA_TRISA6_POSITION                               0x6
#define _DDRA_TRISA6_SIZE                                   0x1
#define _DDRA_TRISA6_LENGTH                                 0x1
#define _DDRA_TRISA6_MASK                                   0x40
#define _DDRA_TRISA7_POSN                                   0x7
#define _DDRA_TRISA7_POSITION                               0x7
#define _DDRA_TRISA7_SIZE                                   0x1
#define _DDRA_TRISA7_LENGTH                                 0x1
#define _DDRA_TRISA7_MASK                                   0x80
#define _DDRA_RA0_POSN                                      0x0
#define _DDRA_RA0_POSITION                                  0x0
#define _DDRA_RA0_SIZE                                      0x1
#define _DDRA_RA0_LENGTH                                    0x1
#define _DDRA_RA0_MASK                                      0x1
#define _DDRA_RA1_POSN                                      0x1
#define _DDRA_RA1_POSITION                                  0x1
#define _DDRA_RA1_SIZE                                      0x1
#define _DDRA_RA1_LENGTH                                    0x1
#define _DDRA_RA1_MASK                                      0x2
#define _DDRA_RA2_POSN                                      0x2
#define _DDRA_RA2_POSITION                                  0x2
#define _DDRA_RA2_SIZE                                      0x1
#define _DDRA_RA2_LENGTH                                    0x1
#define _DDRA_RA2_MASK                                      0x4
#define _DDRA_RA3_POSN                                      0x3
#define _DDRA_RA3_POSITION                                  0x3
#define _DDRA_RA3_SIZE                                      0x1
#define _DDRA_RA3_LENGTH                                    0x1
#define _DDRA_RA3_MASK                                      0x8
#define _DDRA_RA4_POSN                                      0x4
#define _DDRA_RA4_POSITION                                  0x4
#define _DDRA_RA4_SIZE                                      0x1
#define _DDRA_RA4_LENGTH                                    0x1
#define _DDRA_RA4_MASK                                      0x10
#define _DDRA_RA5_POSN                                      0x5
#define _DDRA_RA5_POSITION                                  0x5
#define _DDRA_RA5_SIZE                                      0x1
#define _DDRA_RA5_LENGTH                                    0x1
#define _DDRA_RA5_MASK                                      0x20
#define _DDRA_RA6_POSN                                      0x6
#define _DDRA_RA6_POSITION                                  0x6
#define _DDRA_RA6_SIZE                                      0x1
#define _DDRA_RA6_LENGTH                                    0x1
#define _DDRA_RA6_MASK                                      0x40
#define _DDRA_RA7_POSN                                      0x7
#define _DDRA_RA7_POSITION                                  0x7
#define _DDRA_RA7_SIZE                                      0x1
#define _DDRA_RA7_LENGTH                                    0x1
#define _DDRA_RA7_MASK                                      0x80

// Register: TRISB
extern volatile unsigned char           TRISB               @ 0xF93;
#ifndef _LIB_BUILD
asm("TRISB equ 0F93h");
#endif
// aliases
extern volatile unsigned char           DDRB                @ 0xF93;
#ifndef _LIB_BUILD
asm("DDRB equ 0F93h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned TRISB0                 :1;
        unsigned TRISB1                 :1;
        unsigned TRISB2                 :1;
        unsigned TRISB3                 :1;
        unsigned TRISB4                 :1;
        unsigned TRISB5                 :1;
        unsigned TRISB6                 :1;
        unsigned TRISB7                 :1;
    };
    struct {
        unsigned RB0                    :1;
        unsigned RB1                    :1;
        unsigned RB2                    :1;
        unsigned RB3                    :1;
        unsigned RB4                    :1;
        unsigned RB5                    :1;
        unsigned RB6                    :1;
        unsigned RB7                    :1;
    };
} TRISBbits_t;
extern volatile TRISBbits_t TRISBbits @ 0xF93;
// bitfield macros
#define _TRISB_TRISB0_POSN                                  0x0
#define _TRISB_TRISB0_POSITION                              0x0
#define _TRISB_TRISB0_SIZE                                  0x1
#define _TRISB_TRISB0_LENGTH                                0x1
#define _TRISB_TRISB0_MASK                                  0x1
#define _TRISB_TRISB1_POSN                                  0x1
#define _TRISB_TRISB1_POSITION                              0x1
#define _TRISB_TRISB1_SIZE                                  0x1
#define _TRISB_TRISB1_LENGTH                                0x1
#define _TRISB_TRISB1_MASK                                  0x2
#define _TRISB_TRISB2_POSN                                  0x2
#define _TRISB_TRISB2_POSITION                              0x2
#define _TRISB_TRISB2_SIZE                                  0x1
#define _TRISB_TRISB2_LENGTH                                0x1
#define _TRISB_TRISB2_MASK                                  0x4
#define _TRISB_TRISB3_POSN                                  0x3
#define _TRISB_TRISB3_POSITION                              0x3
#define _TRISB_TRISB3_SIZE                                  0x1
#define _TRISB_TRISB3_LENGTH                                0x1
#define _TRISB_TRISB3_MASK                                  0x8
#define _TRISB_TRISB4_POSN                                  0x4
#define _TRISB_TRISB4_POSITION                              0x4
#define _TRISB_TRISB4_SIZE                                  0x1
#define _TRISB_TRISB4_LENGTH                                0x1
#define _TRISB_TRISB4_MASK                                  0x10
#define _TRISB_TRISB5_POSN                                  0x5
#define _TRISB_TRISB5_POSITION                              0x5
#define _TRISB_TRISB5_SIZE                                  0x1
#define _TRISB_TRISB5_LENGTH                                0x1
#define _TRISB_TRISB5_MASK                                  0x20
#define _TRISB_TRISB6_POSN                                  0x6
#define _TRISB_TRISB6_POSITION                              0x6
#define _TRISB_TRISB6_SIZE                                  0x1
#define _TRISB_TRISB6_LENGTH                                0x1
#define _TRISB_TRISB6_MASK                                  0x40
#define _TRISB_TRISB7_POSN                                  0x7
#define _TRISB_TRISB7_POSITION                              0x7
#define _TRISB_TRISB7_SIZE                                  0x1
#define _TRISB_TRISB7_LENGTH                                0x1
#define _TRISB_TRISB7_MASK                                  0x80
#define _TRISB_RB0_POSN                                     0x0
#define _TRISB_RB0_POSITION                                 0x0
#define _TRISB_RB0_SIZE                                     0x1
#define _TRISB_RB0_LENGTH                                   0x1
#define _TRISB_RB0_MASK                                     0x1
#define _TRISB_RB1_POSN                                     0x1
#define _TRISB_RB1_POSITION                                 0x1
#define _TRISB_RB1_SIZE                                     0x1
#define _TRISB_RB1_LENGTH                                   0x1
#define _TRISB_RB1_MASK                                     0x2
#define _TRISB_RB2_POSN                                     0x2
#define _TRISB_RB2_POSITION                                 0x2
#define _TRISB_RB2_SIZE                                     0x1
#define _TRISB_RB2_LENGTH                                   0x1
#define _TRISB_RB2_MASK                                     0x4
#define _TRISB_RB3_POSN                                     0x3
#define _TRISB_RB3_POSITION                                 0x3
#define _TRISB_RB3_SIZE                                     0x1
#define _TRISB_RB3_LENGTH                                   0x1
#define _TRISB_RB3_MASK                                     0x8
#define _TRISB_RB4_POSN                                     0x4
#define _TRISB_RB4_POSITION                                 0x4
#define _TRISB_RB4_SIZE                                     0x1
#define _TRISB_RB4_LENGTH                                   0x1
#define _TRISB_RB4_MASK                                     0x10
#define _TRISB_RB5_POSN                                     0x5
#define _TRISB_RB5_POSITION                                 0x5
#define _TRISB_RB5_SIZE                                     0x1
#define _TRISB_RB5_LENGTH                                   0x1
#define _TRISB_RB5_MASK                                     0x20
#define _TRISB_RB6_POSN                                     0x6
#define _TRISB_RB6_POSITION                                 0x6
#define _TRISB_RB6_SIZE                                     0x1
#define _TRISB_RB6_LENGTH                                   0x1
#define _TRISB_RB6_MASK                                     0x40
#define _TRISB_RB7_POSN                                     0x7
#define _TRISB_RB7_POSITION                                 0x7
#define _TRISB_RB7_SIZE                                     0x1
#define _TRISB_RB7_LENGTH                                   0x1
#define _TRISB_RB7_MASK                                     0x80
// alias bitfield definitions
typedef union {
    struct {
        unsigned TRISB0                 :1;
        unsigned TRISB1                 :1;
        unsigned TRISB2                 :1;
        unsigned TRISB3                 :1;
        unsigned TRISB4                 :1;
        unsigned TRISB5                 :1;
        unsigned TRISB6                 :1;
        unsigned TRISB7                 :1;
    };
    struct {
        unsigned RB0                    :1;
        unsigned RB1                    :1;
        unsigned RB2                    :1;
        unsigned RB3                    :1;
        unsigned RB4                    :1;
        unsigned RB5                    :1;
        unsigned RB6                    :1;
        unsigned RB7                    :1;
    };
} DDRBbits_t;
extern volatile DDRBbits_t DDRBbits @ 0xF93;
// bitfield macros
#define _DDRB_TRISB0_POSN                                   0x0
#define _DDRB_TRISB0_POSITION                               0x0
#define _DDRB_TRISB0_SIZE                                   0x1
#define _DDRB_TRISB0_LENGTH                                 0x1
#define _DDRB_TRISB0_MASK                                   0x1
#define _DDRB_TRISB1_POSN                                   0x1
#define _DDRB_TRISB1_POSITION                               0x1
#define _DDRB_TRISB1_SIZE                                   0x1
#define _DDRB_TRISB1_LENGTH                                 0x1
#define _DDRB_TRISB1_MASK                                   0x2
#define _DDRB_TRISB2_POSN                                   0x2
#define _DDRB_TRISB2_POSITION                               0x2
#define _DDRB_TRISB2_SIZE                                   0x1
#define _DDRB_TRISB2_LENGTH                                 0x1
#define _DDRB_TRISB2_MASK                                   0x4
#define _DDRB_TRISB3_POSN                                   0x3
#define _DDRB_TRISB3_POSITION                               0x3
#define _DDRB_TRISB3_SIZE                                   0x1
#define _DDRB_TRISB3_LENGTH                                 0x1
#define _DDRB_TRISB3_MASK                                   0x8
#define _DDRB_TRISB4_POSN                                   0x4
#define _DDRB_TRISB4_POSITION                               0x4
#define _DDRB_TRISB4_SIZE                                   0x1
#define _DDRB_TRISB4_LENGTH                                 0x1
#define _DDRB_TRISB4_MASK                                   0x10
#define _DDRB_TRISB5_POSN                                   0x5
#define _DDRB_TRISB5_POSITION                               0x5
#define _DDRB_TRISB5_SIZE                                   0x1
#define _DDRB_TRISB5_LENGTH                                 0x1
#define _DDRB_TRISB5_MASK                                   0x20
#define _DDRB_TRISB6_POSN                                   0x6
#define _DDRB_TRISB6_POSITION                               0x6
#define _DDRB_TRISB6_SIZE                                   0x1
#define _DDRB_TRISB6_LENGTH                                 0x1
#define _DDRB_TRISB6_MASK                                   0x40
#define _DDRB_TRISB7_POSN                                   0x7
#define _DDRB_TRISB7_POSITION                               0x7
#define _DDRB_TRISB7_SIZE                                   0x1
#define _DDRB_TRISB7_LENGTH                                 0x1
#define _DDRB_TRISB7_MASK                                   0x80
#define _DDRB_RB0_POSN                                      0x0
#define _DDRB_RB0_POSITION                                  0x0
#define _DDRB_RB0_SIZE                                      0x1
#define _DDRB_RB0_LENGTH                                    0x1
#define _DDRB_RB0_MASK                                      0x1
#define _DDRB_RB1_POSN                                      0x1
#define _DDRB_RB1_POSITION                                  0x1
#define _DDRB_RB1_SIZE                                      0x1
#define _DDRB_RB1_LENGTH                                    0x1
#define _DDRB_RB1_MASK                                      0x2
#define _DDRB_RB2_POSN                                      0x2
#define _DDRB_RB2_POSITION                                  0x2
#define _DDRB_RB2_SIZE                                      0x1
#define _DDRB_RB2_LENGTH                                    0x1
#define _DDRB_RB2_MASK                                      0x4
#define _DDRB_RB3_POSN                                      0x3
#define _DDRB_RB3_POSITION                                  0x3
#define _DDRB_RB3_SIZE                                      0x1
#define _DDRB_RB3_LENGTH                                    0x1
#define _DDRB_RB3_MASK                                      0x8
#define _DDRB_RB4_POSN                                      0x4
#define _DDRB_RB4_POSITION                                  0x4
#define _DDRB_RB4_SIZE                                      0x1
#define _DDRB_RB4_LENGTH                                    0x1
#define _DDRB_RB4_MASK                                      0x10
#define _DDRB_RB5_POSN                                      0x5
#define _DDRB_RB5_POSITION                                  0x5
#define _DDRB_RB5_SIZE                                      0x1
#define _DDRB_RB5_LENGTH                                    0x1
#define _DDRB_RB5_MASK                                      0x20
#define _DDRB_RB6_POSN                                      0x6
#define _DDRB_RB6_POSITION                                  0x6
#define _DDRB_RB6_SIZE                                      0x1
#define _DDRB_RB6_LENGTH                                    0x1
#define _DDRB_RB6_MASK                                      0x40
#define _DDRB_RB7_POSN                                      0x7
#define _DDRB_RB7_POSITION                                  0x7
#define _DDRB_RB7_SIZE                                      0x1
#define _DDRB_RB7_LENGTH                                    0x1
#define _DDRB_RB7_MASK                                      0x80

// Register: TRISC
extern volatile unsigned char           TRISC               @ 0xF94;
#ifndef _LIB_BUILD
asm("TRISC equ 0F94h");
#endif
// aliases
extern volatile unsigned char           DDRC                @ 0xF94;
#ifndef _LIB_BUILD
asm("DDRC equ 0F94h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned TRISC0                 :1;
        unsigned TRISC1                 :1;
        unsigned TRISC2                 :1;
        unsigned TRISC3                 :1;
        unsigned TRISC4                 :1;
        unsigned TRISC5                 :1;
        unsigned TRISC6                 :1;
        unsigned TRISC7                 :1;
    };
    struct {
        unsigned RC0                    :1;
        unsigned RC1                    :1;
        unsigned RC2                    :1;
        unsigned RC3                    :1;
        unsigned RC4                    :1;
        unsigned RC5                    :1;
        unsigned RC6                    :1;
        unsigned RC7                    :1;
    };
} TRISCbits_t;
extern volatile TRISCbits_t TRISCbits @ 0xF94;
// bitfield macros
#define _TRISC_TRISC0_POSN                                  0x0
#define _TRISC_TRISC0_POSITION                              0x0
#define _TRISC_TRISC0_SIZE                                  0x1
#define _TRISC_TRISC0_LENGTH                                0x1
#define _TRISC_TRISC0_MASK                                  0x1
#define _TRISC_TRISC1_POSN                                  0x1
#define _TRISC_TRISC1_POSITION                              0x1
#define _TRISC_TRISC1_SIZE                                  0x1
#define _TRISC_TRISC1_LENGTH                                0x1
#define _TRISC_TRISC1_MASK                                  0x2
#define _TRISC_TRISC2_POSN                                  0x2
#define _TRISC_TRISC2_POSITION                              0x2
#define _TRISC_TRISC2_SIZE                                  0x1
#define _TRISC_TRISC2_LENGTH                                0x1
#define _TRISC_TRISC2_MASK                                  0x4
#define _TRISC_TRISC3_POSN                                  0x3
#define _TRISC_TRISC3_POSITION                              0x3
#define _TRISC_TRISC3_SIZE                                  0x1
#define _TRISC_TRISC3_LENGTH                                0x1
#define _TRISC_TRISC3_MASK                                  0x8
#define _TRISC_TRISC4_POSN                                  0x4
#define _TRISC_TRISC4_POSITION                              0x4
#define _TRISC_TRISC4_SIZE                                  0x1
#define _TRISC_TRISC4_LENGTH                                0x1
#define _TRISC_TRISC4_MASK                                  0x10
#define _TRISC_TRISC5_POSN                                  0x5
#define _TRISC_TRISC5_POSITION                              0x5
#define _TRISC_TRISC5_SIZE                                  0x1
#define _TRISC_TRISC5_LENGTH                                0x1
#define _TRISC_TRISC5_MASK                                  0x20
#define _TRISC_TRISC6_POSN                                  0x6
#define _TRISC_TRISC6_POSITION                              0x6
#define _TRISC_TRISC6_SIZE                                  0x1
#define _TRISC_TRISC6_LENGTH                                0x1
#define _TRISC_TRISC6_MASK                                  0x40
#define _TRISC_TRISC7_POSN                                  0x7
#define _TRISC_TRISC7_POSITION                              0x7
#define _TRISC_TRISC7_SIZE                                  0x1
#define _TRISC_TRISC7_LENGTH                                0x1
#define _TRISC_TRISC7_MASK                                  0x80
#define _TRISC_RC0_POSN                                     0x0
#define _TRISC_RC0_POSITION                                 0x0
#define _TRISC_RC0_SIZE                                     0x1
#define _TRISC_RC0_LENGTH                                   0x1
#define _TRISC_RC0_MASK                                     0x1
#define _TRISC_RC1_POSN                                     0x1
#define _TRISC_RC1_POSITION                                 0x1
#define _TRISC_RC1_SIZE                                     0x1
#define _TRISC_RC1_LENGTH                                   0x1
#define _TRISC_RC1_MASK                                     0x2
#define _TRISC_RC2_POSN                                     0x2
#define _TRISC_RC2_POSITION                                 0x2
#define _TRISC_RC2_SIZE                                     0x1
#define _TRISC_RC2_LENGTH                                   0x1
#define _TRISC_RC2_MASK                                     0x4
#define _TRISC_RC3_POSN                                     0x3
#define _TRISC_RC3_POSITION                                 0x3
#define _TRISC_RC3_SIZE                                     0x1
#define _TRISC_RC3_LENGTH                                   0x1
#define _TRISC_RC3_MASK                                     0x8
#define _TRISC_RC4_POSN                                     0x4
#define _TRISC_RC4_POSITION                                 0x4
#define _TRISC_RC4_SIZE                                     0x1
#define _TRISC_RC4_LENGTH                                   0x1
#define _TRISC_RC4_MASK                                     0x10
#define _TRISC_RC5_POSN                                     0x5
#define _TRISC_RC5_POSITION                                 0x5
#define _TRISC_RC5_SIZE                                     0x1
#define _TRISC_RC5_LENGTH                                   0x1
#define _TRISC_RC5_MASK                                     0x20
#define _TRISC_RC6_POSN                                     0x6
#define _TRISC_RC6_POSITION                                 0x6
#define _TRISC_RC6_SIZE                                     0x1
#define _TRISC_RC6_LENGTH                                   0x1
#define _TRISC_RC6_MASK                                     0x40
#define _TRISC_RC7_POSN                                     0x7
#define _TRISC_RC7_POSITION                                 0x7
#define _TRISC_RC7_SIZE                                     0x1
#define _TRISC_RC7_LENGTH                                   0x1
#define _TRISC_RC7_MASK                                     0x80
// alias bitfield definitions
typedef union {
    struct {
        unsigned TRISC0                 :1;
        unsigned TRISC1                 :1;
        unsigned TRISC2                 :1;
        unsigned TRISC3                 :1;
        unsigned TRISC4                 :1;
        unsigned TRISC5                 :1;
        unsigned TRISC6                 :1;
        unsigned TRISC7                 :1;
    };
    struct {
        unsigned RC0                    :1;
        unsigned RC1                    :1;
        unsigned RC2                    :1;
        unsigned RC3                    :1;
        unsigned RC4                    :1;
        unsigned RC5                    :1;
        unsigned RC6                    :1;
        unsigned RC7                    :1;
    };
} DDRCbits_t;
extern volatile DDRCbits_t DDRCbits @ 0xF94;
// bitfield macros
#define _DDRC_TRISC0_POSN                                   0x0
#define _DDRC_TRISC0_POSITION                               0x0
#define _DDRC_TRISC0_SIZE                                   0x1
#define _DDRC_TRISC0_LENGTH                                 0x1
#define _DDRC_TRISC0_MASK                                   0x1
#define _DDRC_TRISC1_POSN                                   0x1
#define _DDRC_TRISC1_POSITION                               0x1
#define _DDRC_TRISC1_SIZE                                   0x1
#define _DDRC_TRISC1_LENGTH                                 0x1
#define _DDRC_TRISC1_MASK                                   0x2
#define _DDRC_TRISC2_POSN                                   0x2
#define _DDRC_TRISC2_POSITION                               0x2
#define _DDRC_TRISC2_SIZE                                   0x1
#define _DDRC_TRISC2_LENGTH                                 0x1
#define _DDRC_TRISC2_MASK                                   0x4
#define _DDRC_TRISC3_POSN                                   0x3
#define _DDRC_TRISC3_POSITION                               0x3
#define _DDRC_TRISC3_SIZE                                   0x1
#define _DDRC_TRISC3_LENGTH                                 0x1
#define _DDRC_TRISC3_MASK                                   0x8
#define _DDRC_TRISC4_POSN                                   0x4
#define _DDRC_TRISC4_POSITION                               0x4
#define _DDRC_TRISC4_SIZE                                   0x1
#define _DDRC_TRISC4_LENGTH                                 0x1
#define _DDRC_TRISC4_MASK                                   0x10
#define _DDRC_TRISC5_POSN                                   0x5
#define _DDRC_TRISC5_POSITION                               0x5
#define _DDRC_TRISC5_SIZE                                   0x1
#define _DDRC_TRISC5_LENGTH                                 0x1
#define _DDRC_TRISC5_MASK                                   0x20
#define _DDRC_TRISC6_POSN                                   0x6
#define _DDRC_TRISC6_POSITION                               0x6
#define _DDRC_TRISC6_SIZE                                   0x1
#define _DDRC_TRISC6_LENGTH                                 0x1
#define _DDRC_TRISC6_MASK                                   0x40
#define _DDRC_TRISC7_POSN                                   0x7
#define _DDRC_TRISC7_POSITION                               0x7
#define _DDRC_TRISC7_SIZE                                   0x1
#define _DDRC_TRISC7_LENGTH                                 0x1
#define _DDRC_TRISC7_MASK                                   0x80
#define _DDRC_RC0_POSN                                      0x0
#define _DDRC_RC0_POSITION                                  0x0
#define _DDRC_RC0_SIZE                                      0x1
#define _DDRC_RC0_LENGTH                                    0x1
#define _DDRC_RC0_MASK                                      0x1
#define _DDRC_RC1_POSN                                      0x1
#define _DDRC_RC1_POSITION                                  0x1
#define _DDRC_RC1_SIZE                                      0x1
#define _DDRC_RC1_LENGTH                                    0x1
#define _DDRC_RC1_MASK                                      0x2
#define _DDRC_RC2_POSN                                      0x2
#define _DDRC_RC2_POSITION                                  0x2
#define _DDRC_RC2_SIZE                                      0x1
#define _DDRC_RC2_LENGTH                                    0x1
#define _DDRC_RC2_MASK                                      0x4
#define _DDRC_RC3_POSN                                      0x3
#define _DDRC_RC3_POSITION                                  0x3
#define _DDRC_RC3_SIZE                                      0x1
#define _DDRC_RC3_LENGTH                                    0x1
#define _DDRC_RC3_MASK                                      0x8
#define _DDRC_RC4_POSN                                      0x4
#define _DDRC_RC4_POSITION                                  0x4
#define _DDRC_RC4_SIZE                                      0x1
#define _DDRC_RC4_LENGTH                                    0x1
#define _DDRC_RC4_MASK                                      0x10
#define _DDRC_RC5_POSN                                      0x5
#define _DDRC_RC5_POSITION                                  0x5
#define _DDRC_RC5_SIZE                                      0x1
#define _DDRC_RC5_LENGTH                                    0x1
#define _DDRC_RC5_MASK                                      0x20
#define _DDRC_RC6_POSN                                      0x6
#define _DDRC_RC6_POSITION                                  0x6
#define _DDRC_RC6_SIZE                                      0x1
#define _DDRC_RC6_LENGTH                                    0x1
#define _DDRC_RC6_MASK                                      0x40
#define _DDRC_RC7_POSN                                      0x7
#define _DDRC_RC7_POSITION                                  0x7
#define _DDRC_RC7_SIZE                                      0x1
#define _DDRC_RC7_LENGTH                                    0x1
#define _DDRC_RC7_MASK                                      0x80

// Register: TRISE
extern volatile unsigned char           TRISE               @ 0xF96;
#ifndef _LIB_BUILD
asm("TRISE equ 0F96h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned                        :7;
        unsigned WPUE3                  :1;
    };
} TRISEbits_t;
extern volatile TRISEbits_t TRISEbits @ 0xF96;
// bitfield macros
#define _TRISE_WPUE3_POSN                                   0x7
#define _TRISE_WPUE3_POSITION                               0x7
#define _TRISE_WPUE3_SIZE                                   0x1
#define _TRISE_WPUE3_LENGTH                                 0x1
#define _TRISE_WPUE3_MASK                                   0x80

// Register: OSCTUNE
extern volatile unsigned char           OSCTUNE             @ 0xF9B;
#ifndef _LIB_BUILD
asm("OSCTUNE equ 0F9Bh");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned TUN                    :6;
        unsigned PLLEN                  :1;
        unsigned INTSRC                 :1;
    };
    struct {
        unsigned TUN0                   :1;
        unsigned TUN1                   :1;
        unsigned TUN2                   :1;
        unsigned TUN3                   :1;
        unsigned TUN4                   :1;
        unsigned TUN5                   :1;
    };
} OSCTUNEbits_t;
extern volatile OSCTUNEbits_t OSCTUNEbits @ 0xF9B;
// bitfield macros
#define _OSCTUNE_TUN_POSN                                   0x0
#define _OSCTUNE_TUN_POSITION                               0x0
#define _OSCTUNE_TUN_SIZE                                   0x6
#define _OSCTUNE_TUN_LENGTH                                 0x6
#define _OSCTUNE_TUN_MASK                                   0x3F
#define _OSCTUNE_PLLEN_POSN                                 0x6
#define _OSCTUNE_PLLEN_POSITION                             0x6
#define _OSCTUNE_PLLEN_SIZE                                 0x1
#define _OSCTUNE_PLLEN_LENGTH                               0x1
#define _OSCTUNE_PLLEN_MASK                                 0x40
#define _OSCTUNE_INTSRC_POSN                                0x7
#define _OSCTUNE_INTSRC_POSITION                            0x7
#define _OSCTUNE_INTSRC_SIZE                                0x1
#define _OSCTUNE_INTSRC_LENGTH                              0x1
#define _OSCTUNE_INTSRC_MASK                                0x80
#define _OSCTUNE_TUN0_POSN                                  0x0
#define _OSCTUNE_TUN0_POSITION                              0x0
#define _OSCTUNE_TUN0_SIZE                                  0x1
#define _OSCTUNE_TUN0_LENGTH                                0x1
#define _OSCTUNE_TUN0_MASK                                  0x1
#define _OSCTUNE_TUN1_POSN                                  0x1
#define _OSCTUNE_TUN1_POSITION                              0x1
#define _OSCTUNE_TUN1_SIZE                                  0x1
#define _OSCTUNE_TUN1_LENGTH                                0x1
#define _OSCTUNE_TUN1_MASK                                  0x2
#define _OSCTUNE_TUN2_POSN                                  0x2
#define _OSCTUNE_TUN2_POSITION                              0x2
#define _OSCTUNE_TUN2_SIZE                                  0x1
#define _OSCTUNE_TUN2_LENGTH                                0x1
#define _OSCTUNE_TUN2_MASK                                  0x4
#define _OSCTUNE_TUN3_POSN                                  0x3
#define _OSCTUNE_TUN3_POSITION                              0x3
#define _OSCTUNE_TUN3_SIZE                                  0x1
#define _OSCTUNE_TUN3_LENGTH                                0x1
#define _OSCTUNE_TUN3_MASK                                  0x8
#define _OSCTUNE_TUN4_POSN                                  0x4
#define _OSCTUNE_TUN4_POSITION                              0x4
#define _OSCTUNE_TUN4_SIZE                                  0x1
#define _OSCTUNE_TUN4_LENGTH                                0x1
#define _OSCTUNE_TUN4_MASK                                  0x10
#define _OSCTUNE_TUN5_POSN                                  0x5
#define _OSCTUNE_TUN5_POSITION                              0x5
#define _OSCTUNE_TUN5_SIZE                                  0x1
#define _OSCTUNE_TUN5_LENGTH                                0x1
#define _OSCTUNE_TUN5_MASK                                  0x20

// Register: HLVDCON
extern volatile unsigned char           HLVDCON             @ 0xF9C;
#ifndef _LIB_BUILD
asm("HLVDCON equ 0F9Ch");
#endif
// aliases
extern volatile unsigned char           LVDCON              @ 0xF9C;
#ifndef _LIB_BUILD
asm("LVDCON equ 0F9Ch");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned HLVDL                  :4;
        unsigned HLVDEN                 :1;
        unsigned IRVST                  :1;
        unsigned BGVST                  :1;
        unsigned VDIRMAG                :1;
    };
    struct {
        unsigned HLVDL0                 :1;
        unsigned HLVDL1                 :1;
        unsigned HLVDL2                 :1;
        unsigned HLVDL3                 :1;
    };
    struct {
        unsigned LVDL0                  :1;
        unsigned LVDL1                  :1;
        unsigned LVDL2                  :1;
        unsigned LVDL3                  :1;
        unsigned LVDEN                  :1;
        unsigned IVRST                  :1;
    };
    struct {
        unsigned LVV0                   :1;
        unsigned LVV1                   :1;
        unsigned LVV2                   :1;
        unsigned LVV3                   :1;
        unsigned                        :1;
        unsigned BGST                   :1;
    };
} HLVDCONbits_t;
extern volatile HLVDCONbits_t HLVDCONbits @ 0xF9C;
// bitfield macros
#define _HLVDCON_HLVDL_POSN                                 0x0
#define _HLVDCON_HLVDL_POSITION                             0x0
#define _HLVDCON_HLVDL_SIZE                                 0x4
#define _HLVDCON_HLVDL_LENGTH                               0x4
#define _HLVDCON_HLVDL_MASK                                 0xF
#define _HLVDCON_HLVDEN_POSN                                0x4
#define _HLVDCON_HLVDEN_POSITION                            0x4
#define _HLVDCON_HLVDEN_SIZE                                0x1
#define _HLVDCON_HLVDEN_LENGTH                              0x1
#define _HLVDCON_HLVDEN_MASK                                0x10
#define _HLVDCON_IRVST_POSN                                 0x5
#define _HLVDCON_IRVST_POSITION                             0x5
#define _HLVDCON_IRVST_SIZE                                 0x1
#define _HLVDCON_IRVST_LENGTH                               0x1
#define _HLVDCON_IRVST_MASK                                 0x20
#define _HLVDCON_BGVST_POSN                                 0x6
#define _HLVDCON_BGVST_POSITION                             0x6
#define _HLVDCON_BGVST_SIZE                                 0x1
#define _HLVDCON_BGVST_LENGTH                               0x1
#define _HLVDCON_BGVST_MASK                                 0x40
#define _HLVDCON_VDIRMAG_POSN                               0x7
#define _HLVDCON_VDIRMAG_POSITION                           0x7
#define _HLVDCON_VDIRMAG_SIZE                               0x1
#define _HLVDCON_VDIRMAG_LENGTH                             0x1
#define _HLVDCON_VDIRMAG_MASK                               0x80
#define _HLVDCON_HLVDL0_POSN                                0x0
#define _HLVDCON_HLVDL0_POSITION                            0x0
#define _HLVDCON_HLVDL0_SIZE                                0x1
#define _HLVDCON_HLVDL0_LENGTH                              0x1
#define _HLVDCON_HLVDL0_MASK                                0x1
#define _HLVDCON_HLVDL1_POSN                                0x1
#define _HLVDCON_HLVDL1_POSITION                            0x1
#define _HLVDCON_HLVDL1_SIZE                                0x1
#define _HLVDCON_HLVDL1_LENGTH                              0x1
#define _HLVDCON_HLVDL1_MASK                                0x2
#define _HLVDCON_HLVDL2_POSN                                0x2
#define _HLVDCON_HLVDL2_POSITION                            0x2
#define _HLVDCON_HLVDL2_SIZE                                0x1
#define _HLVDCON_HLVDL2_LENGTH                              0x1
#define _HLVDCON_HLVDL2_MASK                                0x4
#define _HLVDCON_HLVDL3_POSN                                0x3
#define _HLVDCON_HLVDL3_POSITION                            0x3
#define _HLVDCON_HLVDL3_SIZE                                0x1
#define _HLVDCON_HLVDL3_LENGTH                              0x1
#define _HLVDCON_HLVDL3_MASK                                0x8
#define _HLVDCON_LVDL0_POSN                                 0x0
#define _HLVDCON_LVDL0_POSITION                             0x0
#define _HLVDCON_LVDL0_SIZE                                 0x1
#define _HLVDCON_LVDL0_LENGTH                               0x1
#define _HLVDCON_LVDL0_MASK                                 0x1
#define _HLVDCON_LVDL1_POSN                                 0x1
#define _HLVDCON_LVDL1_POSITION                             0x1
#define _HLVDCON_LVDL1_SIZE                                 0x1
#define _HLVDCON_LVDL1_LENGTH                               0x1
#define _HLVDCON_LVDL1_MASK                                 0x2
#define _HLVDCON_LVDL2_POSN                                 0x2
#define _HLVDCON_LVDL2_POSITION                             0x2
#define _HLVDCON_LVDL2_SIZE                                 0x1
#define _HLVDCON_LVDL2_LENGTH                               0x1
#define _HLVDCON_LVDL2_MASK                                 0x4
#define _HLVDCON_LVDL3_POSN                                 0x3
#define _HLVDCON_LVDL3_POSITION                             0x3
#define _HLVDCON_LVDL3_SIZE                                 0x1
#define _HLVDCON_LVDL3_LENGTH                               0x1
#define _HLVDCON_LVDL3_MASK                                 0x8
#define _HLVDCON_LVDEN_POSN                                 0x4
#define _HLVDCON_LVDEN_POSITION                             0x4
#define _HLVDCON_LVDEN_SIZE                                 0x1
#define _HLVDCON_LVDEN_LENGTH                               0x1
#define _HLVDCON_LVDEN_MASK                                 0x10
#define _HLVDCON_IVRST_POSN                                 0x5
#define _HLVDCON_IVRST_POSITION                             0x5
#define _HLVDCON_IVRST_SIZE                                 0x1
#define _HLVDCON_IVRST_LENGTH                               0x1
#define _HLVDCON_IVRST_MASK                                 0x20
#define _HLVDCON_LVV0_POSN                                  0x0
#define _HLVDCON_LVV0_POSITION                              0x0
#define _HLVDCON_LVV0_SIZE                                  0x1
#define _HLVDCON_LVV0_LENGTH                                0x1
#define _HLVDCON_LVV0_MASK                                  0x1
#define _HLVDCON_LVV1_POSN                                  0x1
#define _HLVDCON_LVV1_POSITION                              0x1
#define _HLVDCON_LVV1_SIZE                                  0x1
#define _HLVDCON_LVV1_LENGTH                                0x1
#define _HLVDCON_LVV1_MASK                                  0x2
#define _HLVDCON_LVV2_POSN                                  0x2
#define _HLVDCON_LVV2_POSITION                              0x2
#define _HLVDCON_LVV2_SIZE                                  0x1
#define _HLVDCON_LVV2_LENGTH                                0x1
#define _HLVDCON_LVV2_MASK                                  0x4
#define _HLVDCON_LVV3_POSN                                  0x3
#define _HLVDCON_LVV3_POSITION                              0x3
#define _HLVDCON_LVV3_SIZE                                  0x1
#define _HLVDCON_LVV3_LENGTH                                0x1
#define _HLVDCON_LVV3_MASK                                  0x8
#define _HLVDCON_BGST_POSN                                  0x5
#define _HLVDCON_BGST_POSITION                              0x5
#define _HLVDCON_BGST_SIZE                                  0x1
#define _HLVDCON_BGST_LENGTH                                0x1
#define _HLVDCON_BGST_MASK                                  0x20
// alias bitfield definitions
typedef union {
    struct {
        unsigned HLVDL                  :4;
        unsigned HLVDEN                 :1;
        unsigned IRVST                  :1;
        unsigned BGVST                  :1;
        unsigned VDIRMAG                :1;
    };
    struct {
        unsigned HLVDL0                 :1;
        unsigned HLVDL1                 :1;
        unsigned HLVDL2                 :1;
        unsigned HLVDL3                 :1;
    };
    struct {
        unsigned LVDL0                  :1;
        unsigned LVDL1                  :1;
        unsigned LVDL2                  :1;
        unsigned LVDL3                  :1;
        unsigned LVDEN                  :1;
        unsigned IVRST                  :1;
    };
    struct {
        unsigned LVV0                   :1;
        unsigned LVV1                   :1;
        unsigned LVV2                   :1;
        unsigned LVV3                   :1;
        unsigned                        :1;
        unsigned BGST                   :1;
    };
} LVDCONbits_t;
extern volatile LVDCONbits_t LVDCONbits @ 0xF9C;
// bitfield macros
#define _LVDCON_HLVDL_POSN                                  0x0
#define _LVDCON_HLVDL_POSITION                              0x0
#define _LVDCON_HLVDL_SIZE                                  0x4
#define _LVDCON_HLVDL_LENGTH                                0x4
#define _LVDCON_HLVDL_MASK                                  0xF
#define _LVDCON_HLVDEN_POSN                                 0x4
#define _LVDCON_HLVDEN_POSITION                             0x4
#define _LVDCON_HLVDEN_SIZE                                 0x1
#define _LVDCON_HLVDEN_LENGTH                               0x1
#define _LVDCON_HLVDEN_MASK                                 0x10
#define _LVDCON_IRVST_POSN                                  0x5
#define _LVDCON_IRVST_POSITION                              0x5
#define _LVDCON_IRVST_SIZE                                  0x1
#define _LVDCON_IRVST_LENGTH                                0x1
#define _LVDCON_IRVST_MASK                                  0x20
#define _LVDCON_BGVST_POSN                                  0x6
#define _LVDCON_BGVST_POSITION                              0x6
#define _LVDCON_BGVST_SIZE                                  0x1
#define _LVDCON_BGVST_LENGTH                                0x1
#define _LVDCON_BGVST_MASK                                  0x40
#define _LVDCON_VDIRMAG_POSN                                0x7
#define _LVDCON_VDIRMAG_POSITION                            0x7
#define _LVDCON_VDIRMAG_SIZE                                0x1
#define _LVDCON_VDIRMAG_LENGTH                              0x1
#define _LVDCON_VDIRMAG_MASK                                0x80
#define _LVDCON_HLVDL0_POSN                                 0x0
#define _LVDCON_HLVDL0_POSITION                             0x0
#define _LVDCON_HLVDL0_SIZE                                 0x1
#define _LVDCON_HLVDL0_LENGTH                               0x1
#define _LVDCON_HLVDL0_MASK                                 0x1
#define _LVDCON_HLVDL1_POSN                                 0x1
#define _LVDCON_HLVDL1_POSITION                             0x1
#define _LVDCON_HLVDL1_SIZE                                 0x1
#define _LVDCON_HLVDL1_LENGTH                               0x1
#define _LVDCON_HLVDL1_MASK                                 0x2
#define _LVDCON_HLVDL2_POSN                                 0x2
#define _LVDCON_HLVDL2_POSITION                             0x2
#define _LVDCON_HLVDL2_SIZE                                 0x1
#define _LVDCON_HLVDL2_LENGTH                               0x1
#define _LVDCON_HLVDL2_MASK                                 0x4
#define _LVDCON_HLVDL3_POSN                                 0x3
#define _LVDCON_HLVDL3_POSITION                             0x3
#define _LVDCON_HLVDL3_SIZE                                 0x1
#define _LVDCON_HLVDL3_LENGTH                               0x1
#define _LVDCON_HLVDL3_MASK                                 0x8
#define _LVDCON_LVDL0_POSN                                  0x0
#define _LVDCON_LVDL0_POSITION                              0x0
#define _LVDCON_LVDL0_SIZE                                  0x1
#define _LVDCON_LVDL0_LENGTH                                0x1
#define _LVDCON_LVDL0_MASK                                  0x1
#define _LVDCON_LVDL1_POSN                                  0x1
#define _LVDCON_LVDL1_POSITION                              0x1
#define _LVDCON_LVDL1_SIZE                                  0x1
#define _LVDCON_LVDL1_LENGTH                                0x1
#define _LVDCON_LVDL1_MASK                                  0x2
#define _LVDCON_LVDL2_POSN                                  0x2
#define _LVDCON_LVDL2_POSITION                              0x2
#define _LVDCON_LVDL2_SIZE                                  0x1
#define _LVDCON_LVDL2_LENGTH                                0x1
#define _LVDCON_LVDL2_MASK                                  0x4
#define _LVDCON_LVDL3_POSN                                  0x3
#define _LVDCON_LVDL3_POSITION                              0x3
#define _LVDCON_LVDL3_SIZE                                  0x1
#define _LVDCON_LVDL3_LENGTH                                0x1
#define _LVDCON_LVDL3_MASK                                  0x8
#define _LVDCON_LVDEN_POSN                                  0x4
#define _LVDCON_LVDEN_POSITION                              0x4
#define _LVDCON_LVDEN_SIZE                                  0x1
#define _LVDCON_LVDEN_LENGTH                                0x1
#define _LVDCON_LVDEN_MASK                                  0x10
#define _LVDCON_IVRST_POSN                                  0x5
#define _LVDCON_IVRST_POSITION                              0x5
#define _LVDCON_IVRST_SIZE                                  0x1
#define _LVDCON_IVRST_LENGTH                                0x1
#define _LVDCON_IVRST_MASK                                  0x20
#define _LVDCON_LVV0_POSN                                   0x0
#define _LVDCON_LVV0_POSITION                               0x0
#define _LVDCON_LVV0_SIZE                                   0x1
#define _LVDCON_LVV0_LENGTH                                 0x1
#define _LVDCON_LVV0_MASK                                   0x1
#define _LVDCON_LVV1_POSN                                   0x1
#define _LVDCON_LVV1_POSITION                               0x1
#define _LVDCON_LVV1_SIZE                                   0x1
#define _LVDCON_LVV1_LENGTH                                 0x1
#define _LVDCON_LVV1_MASK                                   0x2
#define _LVDCON_LVV2_POSN                                   0x2
#define _LVDCON_LVV2_POSITION                               0x2
#define _LVDCON_LVV2_SIZE                                   0x1
#define _LVDCON_LVV2_LENGTH                                 0x1
#define _LVDCON_LVV2_MASK                                   0x4
#define _LVDCON_LVV3_POSN                                   0x3
#define _LVDCON_LVV3_POSITION                               0x3
#define _LVDCON_LVV3_SIZE                                   0x1
#define _LVDCON_LVV3_LENGTH                                 0x1
#define _LVDCON_LVV3_MASK                                   0x8
#define _LVDCON_BGST_POSN                                   0x5
#define _LVDCON_BGST_POSITION                               0x5
#define _LVDCON_BGST_SIZE                                   0x1
#define _LVDCON_BGST_LENGTH                                 0x1
#define _LVDCON_BGST_MASK                                   0x20

// Register: PIE1
extern volatile unsigned char           PIE1                @ 0xF9D;
#ifndef _LIB_BUILD
asm("PIE1 equ 0F9Dh");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned TMR1IE                 :1;
        unsigned TMR2IE                 :1;
        unsigned CCP1IE                 :1;
        unsigned SSP1IE                 :1;
        unsigned TX1IE                  :1;
        unsigned RC1IE                  :1;
        unsigned ADIE                   :1;
    };
    struct {
        unsigned                        :3;
        unsigned SSPIE                  :1;
        unsigned TXIE                   :1;
        unsigned RCIE                   :1;
    };
} PIE1bits_t;
extern volatile PIE1bits_t PIE1bits @ 0xF9D;
// bitfield macros
#define _PIE1_TMR1IE_POSN                                   0x0
#define _PIE1_TMR1IE_POSITION                               0x0
#define _PIE1_TMR1IE_SIZE                                   0x1
#define _PIE1_TMR1IE_LENGTH                                 0x1
#define _PIE1_TMR1IE_MASK                                   0x1
#define _PIE1_TMR2IE_POSN                                   0x1
#define _PIE1_TMR2IE_POSITION                               0x1
#define _PIE1_TMR2IE_SIZE                                   0x1
#define _PIE1_TMR2IE_LENGTH                                 0x1
#define _PIE1_TMR2IE_MASK                                   0x2
#define _PIE1_CCP1IE_POSN                                   0x2
#define _PIE1_CCP1IE_POSITION                               0x2
#define _PIE1_CCP1IE_SIZE                                   0x1
#define _PIE1_CCP1IE_LENGTH                                 0x1
#define _PIE1_CCP1IE_MASK                                   0x4
#define _PIE1_SSP1IE_POSN                                   0x3
#define _PIE1_SSP1IE_POSITION                               0x3
#define _PIE1_SSP1IE_SIZE                                   0x1
#define _PIE1_SSP1IE_LENGTH                                 0x1
#define _PIE1_SSP1IE_MASK                                   0x8
#define _PIE1_TX1IE_POSN                                    0x4
#define _PIE1_TX1IE_POSITION                                0x4
#define _PIE1_TX1IE_SIZE                                    0x1
#define _PIE1_TX1IE_LENGTH                                  0x1
#define _PIE1_TX1IE_MASK                                    0x10
#define _PIE1_RC1IE_POSN                                    0x5
#define _PIE1_RC1IE_POSITION                                0x5
#define _PIE1_RC1IE_SIZE                                    0x1
#define _PIE1_RC1IE_LENGTH                                  0x1
#define _PIE1_RC1IE_MASK                                    0x20
#define _PIE1_ADIE_POSN                                     0x6
#define _PIE1_ADIE_POSITION                                 0x6
#define _PIE1_ADIE_SIZE                                     0x1
#define _PIE1_ADIE_LENGTH                                   0x1
#define _PIE1_ADIE_MASK                                     0x40
#define _PIE1_SSPIE_POSN                                    0x3
#define _PIE1_SSPIE_POSITION                                0x3
#define _PIE1_SSPIE_SIZE                                    0x1
#define _PIE1_SSPIE_LENGTH                                  0x1
#define _PIE1_SSPIE_MASK                                    0x8
#define _PIE1_TXIE_POSN                                     0x4
#define _PIE1_TXIE_POSITION                                 0x4
#define _PIE1_TXIE_SIZE                                     0x1
#define _PIE1_TXIE_LENGTH                                   0x1
#define _PIE1_TXIE_MASK                                     0x10
#define _PIE1_RCIE_POSN                                     0x5
#define _PIE1_RCIE_POSITION                                 0x5
#define _PIE1_RCIE_SIZE                                     0x1
#define _PIE1_RCIE_LENGTH                                   0x1
#define _PIE1_RCIE_MASK                                     0x20

// Register: PIR1
extern volatile unsigned char           PIR1                @ 0xF9E;
#ifndef _LIB_BUILD
asm("PIR1 equ 0F9Eh");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned TMR1IF                 :1;
        unsigned TMR2IF                 :1;
        unsigned CCP1IF                 :1;
        unsigned SSP1IF                 :1;
        unsigned TX1IF                  :1;
        unsigned RC1IF                  :1;
        unsigned ADIF                   :1;
    };
    struct {
        unsigned                        :3;
        unsigned SSPIF                  :1;
        unsigned TXIF                   :1;
        unsigned RCIF                   :1;
    };
} PIR1bits_t;
extern volatile PIR1bits_t PIR1bits @ 0xF9E;
// bitfield macros
#define _PIR1_TMR1IF_POSN                                   0x0
#define _PIR1_TMR1IF_POSITION                               0x0
#define _PIR1_TMR1IF_SIZE                                   0x1
#define _PIR1_TMR1IF_LENGTH                                 0x1
#define _PIR1_TMR1IF_MASK                                   0x1
#define _PIR1_TMR2IF_POSN                                   0x1
#define _PIR1_TMR2IF_POSITION                               0x1
#define _PIR1_TMR2IF_SIZE                                   0x1
#define _PIR1_TMR2IF_LENGTH                                 0x1
#define _PIR1_TMR2IF_MASK                                   0x2
#define _PIR1_CCP1IF_POSN                                   0x2
#define _PIR1_CCP1IF_POSITION                               0x2
#define _PIR1_CCP1IF_SIZE                                   0x1
#define _PIR1_CCP1IF_LENGTH                                 0x1
#define _PIR1_CCP1IF_MASK                                   0x4
#define _PIR1_SSP1IF_POSN                                   0x3
#define _PIR1_SSP1IF_POSITION                               0x3
#define _PIR1_SSP1IF_SIZE                                   0x1
#define _PIR1_SSP1IF_LENGTH                                 0x1
#define _PIR1_SSP1IF_MASK                                   0x8
#define _PIR1_TX1IF_POSN                                    0x4
#define _PIR1_TX1IF_POSITION                                0x4
#define _PIR1_TX1IF_SIZE                                    0x1
#define _PIR1_TX1IF_LENGTH                                  0x1
#define _PIR1_TX1IF_MASK                                    0x10
#define _PIR1_RC1IF_POSN                                    0x5
#define _PIR1_RC1IF_POSITION                                0x5
#define _PIR1_RC1IF_SIZE                                    0x1
#define _PIR1_RC1IF_LENGTH                                  0x1
#define _PIR1_RC1IF_MASK                                    0x20
#define _PIR1_ADIF_POSN                                     0x6
#define _PIR1_ADIF_POSITION                                 0x6
#define _PIR1_ADIF_SIZE                                     0x1
#define _PIR1_ADIF_LENGTH                                   0x1
#define _PIR1_ADIF_MASK                                     0x40
#define _PIR1_SSPIF_POSN                                    0x3
#define _PIR1_SSPIF_POSITION                                0x3
#define _PIR1_SSPIF_SIZE                                    0x1
#define _PIR1_SSPIF_LENGTH                                  0x1
#define _PIR1_SSPIF_MASK                                    0x8
#define _PIR1_TXIF_POSN                                     0x4
#define _PIR1_TXIF_POSITION                                 0x4
#define _PIR1_TXIF_SIZE                                     0x1
#define _PIR1_TXIF_LENGTH                                   0x1
#define _PIR1_TXIF_MASK                                     0x10
#define _PIR1_RCIF_POSN                                     0x5
#define _PIR1_RCIF_POSITION                                 0x5
#define _PIR1_RCIF_SIZE                                     0x1
#define _PIR1_RCIF_LENGTH                                   0x1
#define _PIR1_RCIF_MASK                                     0x20

// Register: IPR1
extern volatile unsigned char           IPR1                @ 0xF9F;
#ifndef _LIB_BUILD
asm("IPR1 equ 0F9Fh");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned TMR1IP                 :1;
        unsigned TMR2IP                 :1;
        unsigned CCP1IP                 :1;
        unsigned SSP1IP                 :1;
        unsigned TX1IP                  :1;
        unsigned RC1IP                  :1;
        unsigned ADIP                   :1;
    };
    struct {
        unsigned                        :3;
        unsigned SSPIP                  :1;
        unsigned TXIP                   :1;
        unsigned RCIP                   :1;
    };
} IPR1bits_t;
extern volatile IPR1bits_t IPR1bits @ 0xF9F;
// bitfield macros
#define _IPR1_TMR1IP_POSN                                   0x0
#define _IPR1_TMR1IP_POSITION                               0x0
#define _IPR1_TMR1IP_SIZE                                   0x1
#define _IPR1_TMR1IP_LENGTH                                 0x1
#define _IPR1_TMR1IP_MASK                                   0x1
#define _IPR1_TMR2IP_POSN                                   0x1
#define _IPR1_TMR2IP_POSITION                               0x1
#define _IPR1_TMR2IP_SIZE                                   0x1
#define _IPR1_TMR2IP_LENGTH                                 0x1
#define _IPR1_TMR2IP_MASK                                   0x2
#define _IPR1_CCP1IP_POSN                                   0x2
#define _IPR1_CCP1IP_POSITION                               0x2
#define _IPR1_CCP1IP_SIZE                                   0x1
#define _IPR1_CCP1IP_LENGTH                                 0x1
#define _IPR1_CCP1IP_MASK                                   0x4
#define _IPR1_SSP1IP_POSN                                   0x3
#define _IPR1_SSP1IP_POSITION                               0x3
#define _IPR1_SSP1IP_SIZE                                   0x1
#define _IPR1_SSP1IP_LENGTH                                 0x1
#define _IPR1_SSP1IP_MASK                                   0x8
#define _IPR1_TX1IP_POSN                                    0x4
#define _IPR1_TX1IP_POSITION                                0x4
#define _IPR1_TX1IP_SIZE                                    0x1
#define _IPR1_TX1IP_LENGTH                                  0x1
#define _IPR1_TX1IP_MASK                                    0x10
#define _IPR1_RC1IP_POSN                                    0x5
#define _IPR1_RC1IP_POSITION                                0x5
#define _IPR1_RC1IP_SIZE                                    0x1
#define _IPR1_RC1IP_LENGTH                                  0x1
#define _IPR1_RC1IP_MASK                                    0x20
#define _IPR1_ADIP_POSN                                     0x6
#define _IPR1_ADIP_POSITION                                 0x6
#define _IPR1_ADIP_SIZE                                     0x1
#define _IPR1_ADIP_LENGTH                                   0x1
#define _IPR1_ADIP_MASK                                     0x40
#define _IPR1_SSPIP_POSN                                    0x3
#define _IPR1_SSPIP_POSITION                                0x3
#define _IPR1_SSPIP_SIZE                                    0x1
#define _IPR1_SSPIP_LENGTH                                  0x1
#define _IPR1_SSPIP_MASK                                    0x8
#define _IPR1_TXIP_POSN                                     0x4
#define _IPR1_TXIP_POSITION                                 0x4
#define _IPR1_TXIP_SIZE                                     0x1
#define _IPR1_TXIP_LENGTH                                   0x1
#define _IPR1_TXIP_MASK                                     0x10
#define _IPR1_RCIP_POSN                                     0x5
#define _IPR1_RCIP_POSITION                                 0x5
#define _IPR1_RCIP_SIZE                                     0x1
#define _IPR1_RCIP_LENGTH                                   0x1
#define _IPR1_RCIP_MASK                                     0x20

// Register: PIE2
extern volatile unsigned char           PIE2                @ 0xFA0;
#ifndef _LIB_BUILD
asm("PIE2 equ 0FA0h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned CCP2IE                 :1;
        unsigned TMR3IE                 :1;
        unsigned HLVDIE                 :1;
        unsigned BCL1IE                 :1;
        unsigned EEIE                   :1;
        unsigned C2IE                   :1;
        unsigned C1IE                   :1;
        unsigned OSCFIE                 :1;
    };
    struct {
        unsigned                        :2;
        unsigned LVDIE                  :1;
        unsigned BCLIE                  :1;
    };
    struct {
        unsigned                        :6;
        unsigned CMIE                   :1;
    };
} PIE2bits_t;
extern volatile PIE2bits_t PIE2bits @ 0xFA0;
// bitfield macros
#define _PIE2_CCP2IE_POSN                                   0x0
#define _PIE2_CCP2IE_POSITION                               0x0
#define _PIE2_CCP2IE_SIZE                                   0x1
#define _PIE2_CCP2IE_LENGTH                                 0x1
#define _PIE2_CCP2IE_MASK                                   0x1
#define _PIE2_TMR3IE_POSN                                   0x1
#define _PIE2_TMR3IE_POSITION                               0x1
#define _PIE2_TMR3IE_SIZE                                   0x1
#define _PIE2_TMR3IE_LENGTH                                 0x1
#define _PIE2_TMR3IE_MASK                                   0x2
#define _PIE2_HLVDIE_POSN                                   0x2
#define _PIE2_HLVDIE_POSITION                               0x2
#define _PIE2_HLVDIE_SIZE                                   0x1
#define _PIE2_HLVDIE_LENGTH                                 0x1
#define _PIE2_HLVDIE_MASK                                   0x4
#define _PIE2_BCL1IE_POSN                                   0x3
#define _PIE2_BCL1IE_POSITION                               0x3
#define _PIE2_BCL1IE_SIZE                                   0x1
#define _PIE2_BCL1IE_LENGTH                                 0x1
#define _PIE2_BCL1IE_MASK                                   0x8
#define _PIE2_EEIE_POSN                                     0x4
#define _PIE2_EEIE_POSITION                                 0x4
#define _PIE2_EEIE_SIZE                                     0x1
#define _PIE2_EEIE_LENGTH                                   0x1
#define _PIE2_EEIE_MASK                                     0x10
#define _PIE2_C2IE_POSN                                     0x5
#define _PIE2_C2IE_POSITION                                 0x5
#define _PIE2_C2IE_SIZE                                     0x1
#define _PIE2_C2IE_LENGTH                                   0x1
#define _PIE2_C2IE_MASK                                     0x20
#define _PIE2_C1IE_POSN                                     0x6
#define _PIE2_C1IE_POSITION                                 0x6
#define _PIE2_C1IE_SIZE                                     0x1
#define _PIE2_C1IE_LENGTH                                   0x1
#define _PIE2_C1IE_MASK                                     0x40
#define _PIE2_OSCFIE_POSN                                   0x7
#define _PIE2_OSCFIE_POSITION                               0x7
#define _PIE2_OSCFIE_SIZE                                   0x1
#define _PIE2_OSCFIE_LENGTH                                 0x1
#define _PIE2_OSCFIE_MASK                                   0x80
#define _PIE2_LVDIE_POSN                                    0x2
#define _PIE2_LVDIE_POSITION                                0x2
#define _PIE2_LVDIE_SIZE                                    0x1
#define _PIE2_LVDIE_LENGTH                                  0x1
#define _PIE2_LVDIE_MASK                                    0x4
#define _PIE2_BCLIE_POSN                                    0x3
#define _PIE2_BCLIE_POSITION                                0x3
#define _PIE2_BCLIE_SIZE                                    0x1
#define _PIE2_BCLIE_LENGTH                                  0x1
#define _PIE2_BCLIE_MASK                                    0x8
#define _PIE2_CMIE_POSN                                     0x6
#define _PIE2_CMIE_POSITION                                 0x6
#define _PIE2_CMIE_SIZE                                     0x1
#define _PIE2_CMIE_LENGTH                                   0x1
#define _PIE2_CMIE_MASK                                     0x40

// Register: PIR2
extern volatile unsigned char           PIR2                @ 0xFA1;
#ifndef _LIB_BUILD
asm("PIR2 equ 0FA1h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned CCP2IF                 :1;
        unsigned TMR3IF                 :1;
        unsigned HLVDIF                 :1;
        unsigned BCL1IF                 :1;
        unsigned EEIF                   :1;
        unsigned C2IF                   :1;
        unsigned C1IF                   :1;
        unsigned OSCFIF                 :1;
    };
    struct {
        unsigned                        :2;
        unsigned LVDIF                  :1;
        unsigned BCLIF                  :1;
    };
    struct {
        unsigned                        :6;
        unsigned CMIF                   :1;
    };
} PIR2bits_t;
extern volatile PIR2bits_t PIR2bits @ 0xFA1;
// bitfield macros
#define _PIR2_CCP2IF_POSN                                   0x0
#define _PIR2_CCP2IF_POSITION                               0x0
#define _PIR2_CCP2IF_SIZE                                   0x1
#define _PIR2_CCP2IF_LENGTH                                 0x1
#define _PIR2_CCP2IF_MASK                                   0x1
#define _PIR2_TMR3IF_POSN                                   0x1
#define _PIR2_TMR3IF_POSITION                               0x1
#define _PIR2_TMR3IF_SIZE                                   0x1
#define _PIR2_TMR3IF_LENGTH                                 0x1
#define _PIR2_TMR3IF_MASK                                   0x2
#define _PIR2_HLVDIF_POSN                                   0x2
#define _PIR2_HLVDIF_POSITION                               0x2
#define _PIR2_HLVDIF_SIZE                                   0x1
#define _PIR2_HLVDIF_LENGTH                                 0x1
#define _PIR2_HLVDIF_MASK                                   0x4
#define _PIR2_BCL1IF_POSN                                   0x3
#define _PIR2_BCL1IF_POSITION                               0x3
#define _PIR2_BCL1IF_SIZE                                   0x1
#define _PIR2_BCL1IF_LENGTH                                 0x1
#define _PIR2_BCL1IF_MASK                                   0x8
#define _PIR2_EEIF_POSN                                     0x4
#define _PIR2_EEIF_POSITION                                 0x4
#define _PIR2_EEIF_SIZE                                     0x1
#define _PIR2_EEIF_LENGTH                                   0x1
#define _PIR2_EEIF_MASK                                     0x10
#define _PIR2_C2IF_POSN                                     0x5
#define _PIR2_C2IF_POSITION                                 0x5
#define _PIR2_C2IF_SIZE                                     0x1
#define _PIR2_C2IF_LENGTH                                   0x1
#define _PIR2_C2IF_MASK                                     0x20
#define _PIR2_C1IF_POSN                                     0x6
#define _PIR2_C1IF_POSITION                                 0x6
#define _PIR2_C1IF_SIZE                                     0x1
#define _PIR2_C1IF_LENGTH                                   0x1
#define _PIR2_C1IF_MASK                                     0x40
#define _PIR2_OSCFIF_POSN                                   0x7
#define _PIR2_OSCFIF_POSITION                               0x7
#define _PIR2_OSCFIF_SIZE                                   0x1
#define _PIR2_OSCFIF_LENGTH                                 0x1
#define _PIR2_OSCFIF_MASK                                   0x80
#define _PIR2_LVDIF_POSN                                    0x2
#define _PIR2_LVDIF_POSITION                                0x2
#define _PIR2_LVDIF_SIZE                                    0x1
#define _PIR2_LVDIF_LENGTH                                  0x1
#define _PIR2_LVDIF_MASK                                    0x4
#define _PIR2_BCLIF_POSN                                    0x3
#define _PIR2_BCLIF_POSITION                                0x3
#define _PIR2_BCLIF_SIZE                                    0x1
#define _PIR2_BCLIF_LENGTH                                  0x1
#define _PIR2_BCLIF_MASK                                    0x8
#define _PIR2_CMIF_POSN                                     0x6
#define _PIR2_CMIF_POSITION                                 0x6
#define _PIR2_CMIF_SIZE                                     0x1
#define _PIR2_CMIF_LENGTH                                   0x1
#define _PIR2_CMIF_MASK                                     0x40

// Register: IPR2
extern volatile unsigned char           IPR2                @ 0xFA2;
#ifndef _LIB_BUILD
asm("IPR2 equ 0FA2h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned CCP2IP                 :1;
        unsigned TMR3IP                 :1;
        unsigned HLVDIP                 :1;
        unsigned BCL1IP                 :1;
        unsigned EEIP                   :1;
        unsigned C2IP                   :1;
        unsigned C1IP                   :1;
        unsigned OSCFIP                 :1;
    };
    struct {
        unsigned                        :2;
        unsigned LVDIP                  :1;
        unsigned BCLIP                  :1;
    };
    struct {
        unsigned                        :6;
        unsigned CMIP                   :1;
    };
} IPR2bits_t;
extern volatile IPR2bits_t IPR2bits @ 0xFA2;
// bitfield macros
#define _IPR2_CCP2IP_POSN                                   0x0
#define _IPR2_CCP2IP_POSITION                               0x0
#define _IPR2_CCP2IP_SIZE                                   0x1
#define _IPR2_CCP2IP_LENGTH                                 0x1
#define _IPR2_CCP2IP_MASK                                   0x1
#define _IPR2_TMR3IP_POSN                                   0x1
#define _IPR2_TMR3IP_POSITION                               0x1
#define _IPR2_TMR3IP_SIZE                                   0x1
#define _IPR2_TMR3IP_LENGTH                                 0x1
#define _IPR2_TMR3IP_MASK                                   0x2
#define _IPR2_HLVDIP_POSN                                   0x2
#define _IPR2_HLVDIP_POSITION                               0x2
#define _IPR2_HLVDIP_SIZE                                   0x1
#define _IPR2_HLVDIP_LENGTH                                 0x1
#define _IPR2_HLVDIP_MASK                                   0x4
#define _IPR2_BCL1IP_POSN                                   0x3
#define _IPR2_BCL1IP_POSITION                               0x3
#define _IPR2_BCL1IP_SIZE                                   0x1
#define _IPR2_BCL1IP_LENGTH                                 0x1
#define _IPR2_BCL1IP_MASK                                   0x8
#define _IPR2_EEIP_POSN                                     0x4
#define _IPR2_EEIP_POSITION                                 0x4
#define _IPR2_EEIP_SIZE                                     0x1
#define _IPR2_EEIP_LENGTH                                   0x1
#define _IPR2_EEIP_MASK                                     0x10
#define _IPR2_C2IP_POSN                                     0x5
#define _IPR2_C2IP_POSITION                                 0x5
#define _IPR2_C2IP_SIZE                                     0x1
#define _IPR2_C2IP_LENGTH                                   0x1
#define _IPR2_C2IP_MASK                                     0x20
#define _IPR2_C1IP_POSN                                     0x6
#define _IPR2_C1IP_POSITION                                 0x6
#define _IPR2_C1IP_SIZE                                     0x1
#define _IPR2_C1IP_LENGTH                                   0x1
#define _IPR2_C1IP_MASK                                     0x40
#define _IPR2_OSCFIP_POSN                                   0x7
#define _IPR2_OSCFIP_POSITION                               0x7
#define _IPR2_OSCFIP_SIZE                                   0x1
#define _IPR2_OSCFIP_LENGTH                                 0x1
#define _IPR2_OSCFIP_MASK                                   0x80
#define _IPR2_LVDIP_POSN                                    0x2
#define _IPR2_LVDIP_POSITION                                0x2
#define _IPR2_LVDIP_SIZE                                    0x1
#define _IPR2_LVDIP_LENGTH                                  0x1
#define _IPR2_LVDIP_MASK                                    0x4
#define _IPR2_BCLIP_POSN                                    0x3
#define _IPR2_BCLIP_POSITION                                0x3
#define _IPR2_BCLIP_SIZE                                    0x1
#define _IPR2_BCLIP_LENGTH                                  0x1
#define _IPR2_BCLIP_MASK                                    0x8
#define _IPR2_CMIP_POSN                                     0x6
#define _IPR2_CMIP_POSITION                                 0x6
#define _IPR2_CMIP_SIZE                                     0x1
#define _IPR2_CMIP_LENGTH                                   0x1
#define _IPR2_CMIP_MASK                                     0x40

// Register: PIE3
extern volatile unsigned char           PIE3                @ 0xFA3;
#ifndef _LIB_BUILD
asm("PIE3 equ 0FA3h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned TMR1GIE                :1;
        unsigned TMR3GIE                :1;
        unsigned TMR5GIE                :1;
        unsigned CTMUIE                 :1;
        unsigned TX2IE                  :1;
        unsigned RC2IE                  :1;
        unsigned BCL2IE                 :1;
        unsigned SSP2IE                 :1;
    };
    struct {
        unsigned RXB0IE                 :1;
        unsigned RXB1IE                 :1;
        unsigned TXB0IE                 :1;
        unsigned TXB1IE                 :1;
        unsigned TXB2IE                 :1;
    };
    struct {
        unsigned                        :1;
        unsigned RXBNIE                 :1;
        unsigned                        :2;
        unsigned TXBNIE                 :1;
    };
} PIE3bits_t;
extern volatile PIE3bits_t PIE3bits @ 0xFA3;
// bitfield macros
#define _PIE3_TMR1GIE_POSN                                  0x0
#define _PIE3_TMR1GIE_POSITION                              0x0
#define _PIE3_TMR1GIE_SIZE                                  0x1
#define _PIE3_TMR1GIE_LENGTH                                0x1
#define _PIE3_TMR1GIE_MASK                                  0x1
#define _PIE3_TMR3GIE_POSN                                  0x1
#define _PIE3_TMR3GIE_POSITION                              0x1
#define _PIE3_TMR3GIE_SIZE                                  0x1
#define _PIE3_TMR3GIE_LENGTH                                0x1
#define _PIE3_TMR3GIE_MASK                                  0x2
#define _PIE3_TMR5GIE_POSN                                  0x2
#define _PIE3_TMR5GIE_POSITION                              0x2
#define _PIE3_TMR5GIE_SIZE                                  0x1
#define _PIE3_TMR5GIE_LENGTH                                0x1
#define _PIE3_TMR5GIE_MASK                                  0x4
#define _PIE3_CTMUIE_POSN                                   0x3
#define _PIE3_CTMUIE_POSITION                               0x3
#define _PIE3_CTMUIE_SIZE                                   0x1
#define _PIE3_CTMUIE_LENGTH                                 0x1
#define _PIE3_CTMUIE_MASK                                   0x8
#define _PIE3_TX2IE_POSN                                    0x4
#define _PIE3_TX2IE_POSITION                                0x4
#define _PIE3_TX2IE_SIZE                                    0x1
#define _PIE3_TX2IE_LENGTH                                  0x1
#define _PIE3_TX2IE_MASK                                    0x10
#define _PIE3_RC2IE_POSN                                    0x5
#define _PIE3_RC2IE_POSITION                                0x5
#define _PIE3_RC2IE_SIZE                                    0x1
#define _PIE3_RC2IE_LENGTH                                  0x1
#define _PIE3_RC2IE_MASK                                    0x20
#define _PIE3_BCL2IE_POSN                                   0x6
#define _PIE3_BCL2IE_POSITION                               0x6
#define _PIE3_BCL2IE_SIZE                                   0x1
#define _PIE3_BCL2IE_LENGTH                                 0x1
#define _PIE3_BCL2IE_MASK                                   0x40
#define _PIE3_SSP2IE_POSN                                   0x7
#define _PIE3_SSP2IE_POSITION                               0x7
#define _PIE3_SSP2IE_SIZE                                   0x1
#define _PIE3_SSP2IE_LENGTH                                 0x1
#define _PIE3_SSP2IE_MASK                                   0x80
#define _PIE3_RXB0IE_POSN                                   0x0
#define _PIE3_RXB0IE_POSITION                               0x0
#define _PIE3_RXB0IE_SIZE                                   0x1
#define _PIE3_RXB0IE_LENGTH                                 0x1
#define _PIE3_RXB0IE_MASK                                   0x1
#define _PIE3_RXB1IE_POSN                                   0x1
#define _PIE3_RXB1IE_POSITION                               0x1
#define _PIE3_RXB1IE_SIZE                                   0x1
#define _PIE3_RXB1IE_LENGTH                                 0x1
#define _PIE3_RXB1IE_MASK                                   0x2
#define _PIE3_TXB0IE_POSN                                   0x2
#define _PIE3_TXB0IE_POSITION                               0x2
#define _PIE3_TXB0IE_SIZE                                   0x1
#define _PIE3_TXB0IE_LENGTH                                 0x1
#define _PIE3_TXB0IE_MASK                                   0x4
#define _PIE3_TXB1IE_POSN                                   0x3
#define _PIE3_TXB1IE_POSITION                               0x3
#define _PIE3_TXB1IE_SIZE                                   0x1
#define _PIE3_TXB1IE_LENGTH                                 0x1
#define _PIE3_TXB1IE_MASK                                   0x8
#define _PIE3_TXB2IE_POSN                                   0x4
#define _PIE3_TXB2IE_POSITION                               0x4
#define _PIE3_TXB2IE_SIZE                                   0x1
#define _PIE3_TXB2IE_LENGTH                                 0x1
#define _PIE3_TXB2IE_MASK                                   0x10
#define _PIE3_RXBNIE_POSN                                   0x1
#define _PIE3_RXBNIE_POSITION                               0x1
#define _PIE3_RXBNIE_SIZE                                   0x1
#define _PIE3_RXBNIE_LENGTH                                 0x1
#define _PIE3_RXBNIE_MASK                                   0x2
#define _PIE3_TXBNIE_POSN                                   0x4
#define _PIE3_TXBNIE_POSITION                               0x4
#define _PIE3_TXBNIE_SIZE                                   0x1
#define _PIE3_TXBNIE_LENGTH                                 0x1
#define _PIE3_TXBNIE_MASK                                   0x10

// Register: PIR3
extern volatile unsigned char           PIR3                @ 0xFA4;
#ifndef _LIB_BUILD
asm("PIR3 equ 0FA4h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned TMR1GIF                :1;
        unsigned TMR3GIF                :1;
        unsigned TMR5GIF                :1;
        unsigned CTMUIF                 :1;
        unsigned TX2IF                  :1;
        unsigned RC2IF                  :1;
        unsigned BCL2IF                 :1;
        unsigned SSP2IF                 :1;
    };
    struct {
        unsigned                        :1;
        unsigned RXBNIF                 :1;
        unsigned                        :2;
        unsigned TXBNIF                 :1;
    };
} PIR3bits_t;
extern volatile PIR3bits_t PIR3bits @ 0xFA4;
// bitfield macros
#define _PIR3_TMR1GIF_POSN                                  0x0
#define _PIR3_TMR1GIF_POSITION                              0x0
#define _PIR3_TMR1GIF_SIZE                                  0x1
#define _PIR3_TMR1GIF_LENGTH                                0x1
#define _PIR3_TMR1GIF_MASK                                  0x1
#define _PIR3_TMR3GIF_POSN                                  0x1
#define _PIR3_TMR3GIF_POSITION                              0x1
#define _PIR3_TMR3GIF_SIZE                                  0x1
#define _PIR3_TMR3GIF_LENGTH                                0x1
#define _PIR3_TMR3GIF_MASK                                  0x2
#define _PIR3_TMR5GIF_POSN                                  0x2
#define _PIR3_TMR5GIF_POSITION                              0x2
#define _PIR3_TMR5GIF_SIZE                                  0x1
#define _PIR3_TMR5GIF_LENGTH                                0x1
#define _PIR3_TMR5GIF_MASK                                  0x4
#define _PIR3_CTMUIF_POSN                                   0x3
#define _PIR3_CTMUIF_POSITION                               0x3
#define _PIR3_CTMUIF_SIZE                                   0x1
#define _PIR3_CTMUIF_LENGTH                                 0x1
#define _PIR3_CTMUIF_MASK                                   0x8
#define _PIR3_TX2IF_POSN                                    0x4
#define _PIR3_TX2IF_POSITION                                0x4
#define _PIR3_TX2IF_SIZE                                    0x1
#define _PIR3_TX2IF_LENGTH                                  0x1
#define _PIR3_TX2IF_MASK                                    0x10
#define _PIR3_RC2IF_POSN                                    0x5
#define _PIR3_RC2IF_POSITION                                0x5
#define _PIR3_RC2IF_SIZE                                    0x1
#define _PIR3_RC2IF_LENGTH                                  0x1
#define _PIR3_RC2IF_MASK                                    0x20
#define _PIR3_BCL2IF_POSN                                   0x6
#define _PIR3_BCL2IF_POSITION                               0x6
#define _PIR3_BCL2IF_SIZE                                   0x1
#define _PIR3_BCL2IF_LENGTH                                 0x1
#define _PIR3_BCL2IF_MASK                                   0x40
#define _PIR3_SSP2IF_POSN                                   0x7
#define _PIR3_SSP2IF_POSITION                               0x7
#define _PIR3_SSP2IF_SIZE                                   0x1
#define _PIR3_SSP2IF_LENGTH                                 0x1
#define _PIR3_SSP2IF_MASK                                   0x80
#define _PIR3_RXBNIF_POSN                                   0x1
#define _PIR3_RXBNIF_POSITION                               0x1
#define _PIR3_RXBNIF_SIZE                                   0x1
#define _PIR3_RXBNIF_LENGTH                                 0x1
#define _PIR3_RXBNIF_MASK                                   0x2
#define _PIR3_TXBNIF_POSN                                   0x4
#define _PIR3_TXBNIF_POSITION                               0x4
#define _PIR3_TXBNIF_SIZE                                   0x1
#define _PIR3_TXBNIF_LENGTH                                 0x1
#define _PIR3_TXBNIF_MASK                                   0x10

// Register: IPR3
extern volatile unsigned char           IPR3                @ 0xFA5;
#ifndef _LIB_BUILD
asm("IPR3 equ 0FA5h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned TMR1GIP                :1;
        unsigned TMR3GIP                :1;
        unsigned TMR5GIP                :1;
        unsigned CTMUIP                 :1;
        unsigned TX2IP                  :1;
        unsigned RC2IP                  :1;
        unsigned BCL2IP                 :1;
        unsigned SSP2IP                 :1;
    };
    struct {
        unsigned                        :1;
        unsigned RXBNIP                 :1;
        unsigned                        :2;
        unsigned TXBNIP                 :1;
    };
} IPR3bits_t;
extern volatile IPR3bits_t IPR3bits @ 0xFA5;
// bitfield macros
#define _IPR3_TMR1GIP_POSN                                  0x0
#define _IPR3_TMR1GIP_POSITION                              0x0
#define _IPR3_TMR1GIP_SIZE                                  0x1
#define _IPR3_TMR1GIP_LENGTH                                0x1
#define _IPR3_TMR1GIP_MASK                                  0x1
#define _IPR3_TMR3GIP_POSN                                  0x1
#define _IPR3_TMR3GIP_POSITION                              0x1
#define _IPR3_TMR3GIP_SIZE                                  0x1
#define _IPR3_TMR3GIP_LENGTH                                0x1
#define _IPR3_TMR3GIP_MASK                                  0x2
#define _IPR3_TMR5GIP_POSN                                  0x2
#define _IPR3_TMR5GIP_POSITION                              0x2
#define _IPR3_TMR5GIP_SIZE                                  0x1
#define _IPR3_TMR5GIP_LENGTH                                0x1
#define _IPR3_TMR5GIP_MASK                                  0x4
#define _IPR3_CTMUIP_POSN                                   0x3
#define _IPR3_CTMUIP_POSITION                               0x3
#define _IPR3_CTMUIP_SIZE                                   0x1
#define _IPR3_CTMUIP_LENGTH                                 0x1
#define _IPR3_CTMUIP_MASK                                   0x8
#define _IPR3_TX2IP_POSN                                    0x4
#define _IPR3_TX2IP_POSITION                                0x4
#define _IPR3_TX2IP_SIZE                                    0x1
#define _IPR3_TX2IP_LENGTH                                  0x1
#define _IPR3_TX2IP_MASK                                    0x10
#define _IPR3_RC2IP_POSN                                    0x5
#define _IPR3_RC2IP_POSITION                                0x5
#define _IPR3_RC2IP_SIZE                                    0x1
#define _IPR3_RC2IP_LENGTH                                  0x1
#define _IPR3_RC2IP_MASK                                    0x20
#define _IPR3_BCL2IP_POSN                                   0x6
#define _IPR3_BCL2IP_POSITION                               0x6
#define _IPR3_BCL2IP_SIZE                                   0x1
#define _IPR3_BCL2IP_LENGTH                                 0x1
#define _IPR3_BCL2IP_MASK                                   0x40
#define _IPR3_SSP2IP_POSN                                   0x7
#define _IPR3_SSP2IP_POSITION                               0x7
#define _IPR3_SSP2IP_SIZE                                   0x1
#define _IPR3_SSP2IP_LENGTH                                 0x1
#define _IPR3_SSP2IP_MASK                                   0x80
#define _IPR3_RXBNIP_POSN                                   0x1
#define _IPR3_RXBNIP_POSITION                               0x1
#define _IPR3_RXBNIP_SIZE                                   0x1
#define _IPR3_RXBNIP_LENGTH                                 0x1
#define _IPR3_RXBNIP_MASK                                   0x2
#define _IPR3_TXBNIP_POSN                                   0x4
#define _IPR3_TXBNIP_POSITION                               0x4
#define _IPR3_TXBNIP_SIZE                                   0x1
#define _IPR3_TXBNIP_LENGTH                                 0x1
#define _IPR3_TXBNIP_MASK                                   0x10

// Register: EECON1
extern volatile unsigned char           EECON1              @ 0xFA6;
#ifndef _LIB_BUILD
asm("EECON1 equ 0FA6h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned RD                     :1;
        unsigned WR                     :1;
        unsigned WREN                   :1;
        unsigned WRERR                  :1;
        unsigned FREE                   :1;
        unsigned                        :1;
        unsigned CFGS                   :1;
        unsigned EEPGD                  :1;
    };
    struct {
        unsigned                        :6;
        unsigned EEFS                   :1;
    };
} EECON1bits_t;
extern volatile EECON1bits_t EECON1bits @ 0xFA6;
// bitfield macros
#define _EECON1_RD_POSN                                     0x0
#define _EECON1_RD_POSITION                                 0x0
#define _EECON1_RD_SIZE                                     0x1
#define _EECON1_RD_LENGTH                                   0x1
#define _EECON1_RD_MASK                                     0x1
#define _EECON1_WR_POSN                                     0x1
#define _EECON1_WR_POSITION                                 0x1
#define _EECON1_WR_SIZE                                     0x1
#define _EECON1_WR_LENGTH                                   0x1
#define _EECON1_WR_MASK                                     0x2
#define _EECON1_WREN_POSN                                   0x2
#define _EECON1_WREN_POSITION                               0x2
#define _EECON1_WREN_SIZE                                   0x1
#define _EECON1_WREN_LENGTH                                 0x1
#define _EECON1_WREN_MASK                                   0x4
#define _EECON1_WRERR_POSN                                  0x3
#define _EECON1_WRERR_POSITION                              0x3
#define _EECON1_WRERR_SIZE                                  0x1
#define _EECON1_WRERR_LENGTH                                0x1
#define _EECON1_WRERR_MASK                                  0x8
#define _EECON1_FREE_POSN                                   0x4
#define _EECON1_FREE_POSITION                               0x4
#define _EECON1_FREE_SIZE                                   0x1
#define _EECON1_FREE_LENGTH                                 0x1
#define _EECON1_FREE_MASK                                   0x10
#define _EECON1_CFGS_POSN                                   0x6
#define _EECON1_CFGS_POSITION                               0x6
#define _EECON1_CFGS_SIZE                                   0x1
#define _EECON1_CFGS_LENGTH                                 0x1
#define _EECON1_CFGS_MASK                                   0x40
#define _EECON1_EEPGD_POSN                                  0x7
#define _EECON1_EEPGD_POSITION                              0x7
#define _EECON1_EEPGD_SIZE                                  0x1
#define _EECON1_EEPGD_LENGTH                                0x1
#define _EECON1_EEPGD_MASK                                  0x80
#define _EECON1_EEFS_POSN                                   0x6
#define _EECON1_EEFS_POSITION                               0x6
#define _EECON1_EEFS_SIZE                                   0x1
#define _EECON1_EEFS_LENGTH                                 0x1
#define _EECON1_EEFS_MASK                                   0x40

// Register: EECON2
extern volatile unsigned char           EECON2              @ 0xFA7;
#ifndef _LIB_BUILD
asm("EECON2 equ 0FA7h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned EECON2                 :8;
    };
} EECON2bits_t;
extern volatile EECON2bits_t EECON2bits @ 0xFA7;
// bitfield macros
#define _EECON2_EECON2_POSN                                 0x0
#define _EECON2_EECON2_POSITION                             0x0
#define _EECON2_EECON2_SIZE                                 0x8
#define _EECON2_EECON2_LENGTH                               0x8
#define _EECON2_EECON2_MASK                                 0xFF

// Register: EEDATA
extern volatile unsigned char           EEDATA              @ 0xFA8;
#ifndef _LIB_BUILD
asm("EEDATA equ 0FA8h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned EEDATA                 :8;
    };
} EEDATAbits_t;
extern volatile EEDATAbits_t EEDATAbits @ 0xFA8;
// bitfield macros
#define _EEDATA_EEDATA_POSN                                 0x0
#define _EEDATA_EEDATA_POSITION                             0x0
#define _EEDATA_EEDATA_SIZE                                 0x8
#define _EEDATA_EEDATA_LENGTH                               0x8
#define _EEDATA_EEDATA_MASK                                 0xFF

// Register: EEADR
extern volatile unsigned char           EEADR               @ 0xFA9;
#ifndef _LIB_BUILD
asm("EEADR equ 0FA9h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned EEADR                  :8;
    };
    struct {
        unsigned EEADR0                 :1;
        unsigned EEADR1                 :1;
        unsigned EEADR2                 :1;
        unsigned EEADR3                 :1;
        unsigned EEADR4                 :1;
        unsigned EEADR5                 :1;
        unsigned EEADR6                 :1;
        unsigned EEADR7                 :1;
    };
} EEADRbits_t;
extern volatile EEADRbits_t EEADRbits @ 0xFA9;
// bitfield macros
#define _EEADR_EEADR_POSN                                   0x0
#define _EEADR_EEADR_POSITION                               0x0
#define _EEADR_EEADR_SIZE                                   0x8
#define _EEADR_EEADR_LENGTH                                 0x8
#define _EEADR_EEADR_MASK                                   0xFF
#define _EEADR_EEADR0_POSN                                  0x0
#define _EEADR_EEADR0_POSITION                              0x0
#define _EEADR_EEADR0_SIZE                                  0x1
#define _EEADR_EEADR0_LENGTH                                0x1
#define _EEADR_EEADR0_MASK                                  0x1
#define _EEADR_EEADR1_POSN                                  0x1
#define _EEADR_EEADR1_POSITION                              0x1
#define _EEADR_EEADR1_SIZE                                  0x1
#define _EEADR_EEADR1_LENGTH                                0x1
#define _EEADR_EEADR1_MASK                                  0x2
#define _EEADR_EEADR2_POSN                                  0x2
#define _EEADR_EEADR2_POSITION                              0x2
#define _EEADR_EEADR2_SIZE                                  0x1
#define _EEADR_EEADR2_LENGTH                                0x1
#define _EEADR_EEADR2_MASK                                  0x4
#define _EEADR_EEADR3_POSN                                  0x3
#define _EEADR_EEADR3_POSITION                              0x3
#define _EEADR_EEADR3_SIZE                                  0x1
#define _EEADR_EEADR3_LENGTH                                0x1
#define _EEADR_EEADR3_MASK                                  0x8
#define _EEADR_EEADR4_POSN                                  0x4
#define _EEADR_EEADR4_POSITION                              0x4
#define _EEADR_EEADR4_SIZE                                  0x1
#define _EEADR_EEADR4_LENGTH                                0x1
#define _EEADR_EEADR4_MASK                                  0x10
#define _EEADR_EEADR5_POSN                                  0x5
#define _EEADR_EEADR5_POSITION                              0x5
#define _EEADR_EEADR5_SIZE                                  0x1
#define _EEADR_EEADR5_LENGTH                                0x1
#define _EEADR_EEADR5_MASK                                  0x20
#define _EEADR_EEADR6_POSN                                  0x6
#define _EEADR_EEADR6_POSITION                              0x6
#define _EEADR_EEADR6_SIZE                                  0x1
#define _EEADR_EEADR6_LENGTH                                0x1
#define _EEADR_EEADR6_MASK                                  0x40
#define _EEADR_EEADR7_POSN                                  0x7
#define _EEADR_EEADR7_POSITION                              0x7
#define _EEADR_EEADR7_SIZE                                  0x1
#define _EEADR_EEADR7_LENGTH                                0x1
#define _EEADR_EEADR7_MASK                                  0x80

// Register: RCSTA1
extern volatile unsigned char           RCSTA1              @ 0xFAB;
#ifndef _LIB_BUILD
asm("RCSTA1 equ 0FABh");
#endif
// aliases
extern volatile unsigned char           RCSTA               @ 0xFAB;
#ifndef _LIB_BUILD
asm("RCSTA equ 0FABh");
#endif
extern volatile unsigned char           RC1STA              @ 0xFAB;
#ifndef _LIB_BUILD
asm("RC1STA equ 0FABh");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned RX9D                   :1;
        unsigned OERR                   :1;
        unsigned FERR                   :1;
        unsigned ADDEN                  :1;
        unsigned CREN                   :1;
        unsigned SREN                   :1;
        unsigned RX9                    :1;
        unsigned SPEN                   :1;
    };
    struct {
        unsigned                        :3;
        unsigned ADEN                   :1;
    };
    struct {
        unsigned RX9D1                  :1;
        unsigned OERR1                  :1;
        unsigned FERR1                  :1;
        unsigned ADDEN1                 :1;
        unsigned CREN1                  :1;
        unsigned SREN1                  :1;
        unsigned RX91                   :1;
        unsigned SPEN1                  :1;
    };
    struct {
        unsigned RCD8                   :1;
        unsigned                        :5;
        unsigned RC8_9                  :1;
    };
    struct {
        unsigned                        :6;
        unsigned RC9                    :1;
    };
    struct {
        unsigned                        :5;
        unsigned SRENA                  :1;
    };
} RCSTA1bits_t;
extern volatile RCSTA1bits_t RCSTA1bits @ 0xFAB;
// bitfield macros
#define _RCSTA1_RX9D_POSN                                   0x0
#define _RCSTA1_RX9D_POSITION                               0x0
#define _RCSTA1_RX9D_SIZE                                   0x1
#define _RCSTA1_RX9D_LENGTH                                 0x1
#define _RCSTA1_RX9D_MASK                                   0x1
#define _RCSTA1_OERR_POSN                                   0x1
#define _RCSTA1_OERR_POSITION                               0x1
#define _RCSTA1_OERR_SIZE                                   0x1
#define _RCSTA1_OERR_LENGTH                                 0x1
#define _RCSTA1_OERR_MASK                                   0x2
#define _RCSTA1_FERR_POSN                                   0x2
#define _RCSTA1_FERR_POSITION                               0x2
#define _RCSTA1_FERR_SIZE                                   0x1
#define _RCSTA1_FERR_LENGTH                                 0x1
#define _RCSTA1_FERR_MASK                                   0x4
#define _RCSTA1_ADDEN_POSN                                  0x3
#define _RCSTA1_ADDEN_POSITION                              0x3
#define _RCSTA1_ADDEN_SIZE                                  0x1
#define _RCSTA1_ADDEN_LENGTH                                0x1
#define _RCSTA1_ADDEN_MASK                                  0x8
#define _RCSTA1_CREN_POSN                                   0x4
#define _RCSTA1_CREN_POSITION                               0x4
#define _RCSTA1_CREN_SIZE                                   0x1
#define _RCSTA1_CREN_LENGTH                                 0x1
#define _RCSTA1_CREN_MASK                                   0x10
#define _RCSTA1_SREN_POSN                                   0x5
#define _RCSTA1_SREN_POSITION                               0x5
#define _RCSTA1_SREN_SIZE                                   0x1
#define _RCSTA1_SREN_LENGTH                                 0x1
#define _RCSTA1_SREN_MASK                                   0x20
#define _RCSTA1_RX9_POSN                                    0x6
#define _RCSTA1_RX9_POSITION                                0x6
#define _RCSTA1_RX9_SIZE                                    0x1
#define _RCSTA1_RX9_LENGTH                                  0x1
#define _RCSTA1_RX9_MASK                                    0x40
#define _RCSTA1_SPEN_POSN                                   0x7
#define _RCSTA1_SPEN_POSITION                               0x7
#define _RCSTA1_SPEN_SIZE                                   0x1
#define _RCSTA1_SPEN_LENGTH                                 0x1
#define _RCSTA1_SPEN_MASK                                   0x80
#define _RCSTA1_ADEN_POSN                                   0x3
#define _RCSTA1_ADEN_POSITION                               0x3
#define _RCSTA1_ADEN_SIZE                                   0x1
#define _RCSTA1_ADEN_LENGTH                                 0x1
#define _RCSTA1_ADEN_MASK                                   0x8
#define _RCSTA1_RX9D1_POSN                                  0x0
#define _RCSTA1_RX9D1_POSITION                              0x0
#define _RCSTA1_RX9D1_SIZE                                  0x1
#define _RCSTA1_RX9D1_LENGTH                                0x1
#define _RCSTA1_RX9D1_MASK                                  0x1
#define _RCSTA1_OERR1_POSN                                  0x1
#define _RCSTA1_OERR1_POSITION                              0x1
#define _RCSTA1_OERR1_SIZE                                  0x1
#define _RCSTA1_OERR1_LENGTH                                0x1
#define _RCSTA1_OERR1_MASK                                  0x2
#define _RCSTA1_FERR1_POSN                                  0x2
#define _RCSTA1_FERR1_POSITION                              0x2
#define _RCSTA1_FERR1_SIZE                                  0x1
#define _RCSTA1_FERR1_LENGTH                                0x1
#define _RCSTA1_FERR1_MASK                                  0x4
#define _RCSTA1_ADDEN1_POSN                                 0x3
#define _RCSTA1_ADDEN1_POSITION                             0x3
#define _RCSTA1_ADDEN1_SIZE                                 0x1
#define _RCSTA1_ADDEN1_LENGTH                               0x1
#define _RCSTA1_ADDEN1_MASK                                 0x8
#define _RCSTA1_CREN1_POSN                                  0x4
#define _RCSTA1_CREN1_POSITION                              0x4
#define _RCSTA1_CREN1_SIZE                                  0x1
#define _RCSTA1_CREN1_LENGTH                                0x1
#define _RCSTA1_CREN1_MASK                                  0x10
#define _RCSTA1_SREN1_POSN                                  0x5
#define _RCSTA1_SREN1_POSITION                              0x5
#define _RCSTA1_SREN1_SIZE                                  0x1
#define _RCSTA1_SREN1_LENGTH                                0x1
#define _RCSTA1_SREN1_MASK                                  0x20
#define _RCSTA1_RX91_POSN                                   0x6
#define _RCSTA1_RX91_POSITION                               0x6
#define _RCSTA1_RX91_SIZE                                   0x1
#define _RCSTA1_RX91_LENGTH                                 0x1
#define _RCSTA1_RX91_MASK                                   0x40
#define _RCSTA1_SPEN1_POSN                                  0x7
#define _RCSTA1_SPEN1_POSITION                              0x7
#define _RCSTA1_SPEN1_SIZE                                  0x1
#define _RCSTA1_SPEN1_LENGTH                                0x1
#define _RCSTA1_SPEN1_MASK                                  0x80
#define _RCSTA1_RCD8_POSN                                   0x0
#define _RCSTA1_RCD8_POSITION                               0x0
#define _RCSTA1_RCD8_SIZE                                   0x1
#define _RCSTA1_RCD8_LENGTH                                 0x1
#define _RCSTA1_RCD8_MASK                                   0x1
#define _RCSTA1_RC8_9_POSN                                  0x6
#define _RCSTA1_RC8_9_POSITION                              0x6
#define _RCSTA1_RC8_9_SIZE                                  0x1
#define _RCSTA1_RC8_9_LENGTH                                0x1
#define _RCSTA1_RC8_9_MASK                                  0x40
#define _RCSTA1_RC9_POSN                                    0x6
#define _RCSTA1_RC9_POSITION                                0x6
#define _RCSTA1_RC9_SIZE                                    0x1
#define _RCSTA1_RC9_LENGTH                                  0x1
#define _RCSTA1_RC9_MASK                                    0x40
#define _RCSTA1_SRENA_POSN                                  0x5
#define _RCSTA1_SRENA_POSITION                              0x5
#define _RCSTA1_SRENA_SIZE                                  0x1
#define _RCSTA1_SRENA_LENGTH                                0x1
#define _RCSTA1_SRENA_MASK                                  0x20
// alias bitfield definitions
typedef union {
    struct {
        unsigned RX9D                   :1;
        unsigned OERR                   :1;
        unsigned FERR                   :1;
        unsigned ADDEN                  :1;
        unsigned CREN                   :1;
        unsigned SREN                   :1;
        unsigned RX9                    :1;
        unsigned SPEN                   :1;
    };
    struct {
        unsigned                        :3;
        unsigned ADEN                   :1;
    };
    struct {
        unsigned RX9D1                  :1;
        unsigned OERR1                  :1;
        unsigned FERR1                  :1;
        unsigned ADDEN1                 :1;
        unsigned CREN1                  :1;
        unsigned SREN1                  :1;
        unsigned RX91                   :1;
        unsigned SPEN1                  :1;
    };
    struct {
        unsigned RCD8                   :1;
        unsigned                        :5;
        unsigned RC8_9                  :1;
    };
    struct {
        unsigned                        :6;
        unsigned RC9                    :1;
    };
    struct {
        unsigned                        :5;
        unsigned SRENA                  :1;
    };
} RCSTAbits_t;
extern volatile RCSTAbits_t RCSTAbits @ 0xFAB;
// bitfield macros
#define _RCSTA_RX9D_POSN                                    0x0
#define _RCSTA_RX9D_POSITION                                0x0
#define _RCSTA_RX9D_SIZE                                    0x1
#define _RCSTA_RX9D_LENGTH                                  0x1
#define _RCSTA_RX9D_MASK                                    0x1
#define _RCSTA_OERR_POSN                                    0x1
#define _RCSTA_OERR_POSITION                                0x1
#define _RCSTA_OERR_SIZE                                    0x1
#define _RCSTA_OERR_LENGTH                                  0x1
#define _RCSTA_OERR_MASK                                    0x2
#define _RCSTA_FERR_POSN                                    0x2
#define _RCSTA_FERR_POSITION                                0x2
#define _RCSTA_FERR_SIZE                                    0x1
#define _RCSTA_FERR_LENGTH                                  0x1
#define _RCSTA_FERR_MASK                                    0x4
#define _RCSTA_ADDEN_POSN                                   0x3
#define _RCSTA_ADDEN_POSITION                               0x3
#define _RCSTA_ADDEN_SIZE                                   0x1
#define _RCSTA_ADDEN_LENGTH                                 0x1
#define _RCSTA_ADDEN_MASK                                   0x8
#define _RCSTA_CREN_POSN                                    0x4
#define _RCSTA_CREN_POSITION                                0x4
#define _RCSTA_CREN_SIZE                                    0x1
#define _RCSTA_CREN_LENGTH                                  0x1
#define _RCSTA_CREN_MASK                                    0x10
#define _RCSTA_SREN_POSN                                    0x5
#define _RCSTA_SREN_POSITION                                0x5
#define _RCSTA_SREN_SIZE                                    0x1
#define _RCSTA_SREN_LENGTH                                  0x1
#define _RCSTA_SREN_MASK                                    0x20
#define _RCSTA_RX9_POSN                                     0x6
#define _RCSTA_RX9_POSITION                                 0x6
#define _RCSTA_RX9_SIZE                                     0x1
#define _RCSTA_RX9_LENGTH                                   0x1
#define _RCSTA_RX9_MASK                                     0x40
#define _RCSTA_SPEN_POSN                                    0x7
#define _RCSTA_SPEN_POSITION                                0x7
#define _RCSTA_SPEN_SIZE                                    0x1
#define _RCSTA_SPEN_LENGTH                                  0x1
#define _RCSTA_SPEN_MASK                                    0x80
#define _RCSTA_ADEN_POSN                                    0x3
#define _RCSTA_ADEN_POSITION                                0x3
#define _RCSTA_ADEN_SIZE                                    0x1
#define _RCSTA_ADEN_LENGTH                                  0x1
#define _RCSTA_ADEN_MASK                                    0x8
#define _RCSTA_RX9D1_POSN                                   0x0
#define _RCSTA_RX9D1_POSITION                               0x0
#define _RCSTA_RX9D1_SIZE                                   0x1
#define _RCSTA_RX9D1_LENGTH                                 0x1
#define _RCSTA_RX9D1_MASK                                   0x1
#define _RCSTA_OERR1_POSN                                   0x1
#define _RCSTA_OERR1_POSITION                               0x1
#define _RCSTA_OERR1_SIZE                                   0x1
#define _RCSTA_OERR1_LENGTH                                 0x1
#define _RCSTA_OERR1_MASK                                   0x2
#define _RCSTA_FERR1_POSN                                   0x2
#define _RCSTA_FERR1_POSITION                               0x2
#define _RCSTA_FERR1_SIZE                                   0x1
#define _RCSTA_FERR1_LENGTH                                 0x1
#define _RCSTA_FERR1_MASK                                   0x4
#define _RCSTA_ADDEN1_POSN                                  0x3
#define _RCSTA_ADDEN1_POSITION                              0x3
#define _RCSTA_ADDEN1_SIZE                                  0x1
#define _RCSTA_ADDEN1_LENGTH                                0x1
#define _RCSTA_ADDEN1_MASK                                  0x8
#define _RCSTA_CREN1_POSN                                   0x4
#define _RCSTA_CREN1_POSITION                               0x4
#define _RCSTA_CREN1_SIZE                                   0x1
#define _RCSTA_CREN1_LENGTH                                 0x1
#define _RCSTA_CREN1_MASK                                   0x10
#define _RCSTA_SREN1_POSN                                   0x5
#define _RCSTA_SREN1_POSITION                               0x5
#define _RCSTA_SREN1_SIZE                                   0x1
#define _RCSTA_SREN1_LENGTH                                 0x1
#define _RCSTA_SREN1_MASK                                   0x20
#define _RCSTA_RX91_POSN                                    0x6
#define _RCSTA_RX91_POSITION                                0x6
#define _RCSTA_RX91_SIZE                                    0x1
#define _RCSTA_RX91_LENGTH                                  0x1
#define _RCSTA_RX91_MASK                                    0x40
#define _RCSTA_SPEN1_POSN                                   0x7
#define _RCSTA_SPEN1_POSITION                               0x7
#define _RCSTA_SPEN1_SIZE                                   0x1
#define _RCSTA_SPEN1_LENGTH                                 0x1
#define _RCSTA_SPEN1_MASK                                   0x80
#define _RCSTA_RCD8_POSN                                    0x0
#define _RCSTA_RCD8_POSITION                                0x0
#define _RCSTA_RCD8_SIZE                                    0x1
#define _RCSTA_RCD8_LENGTH                                  0x1
#define _RCSTA_RCD8_MASK                                    0x1
#define _RCSTA_RC8_9_POSN                                   0x6
#define _RCSTA_RC8_9_POSITION                               0x6
#define _RCSTA_RC8_9_SIZE                                   0x1
#define _RCSTA_RC8_9_LENGTH                                 0x1
#define _RCSTA_RC8_9_MASK                                   0x40
#define _RCSTA_RC9_POSN                                     0x6
#define _RCSTA_RC9_POSITION                                 0x6
#define _RCSTA_RC9_SIZE                                     0x1
#define _RCSTA_RC9_LENGTH                                   0x1
#define _RCSTA_RC9_MASK                                     0x40
#define _RCSTA_SRENA_POSN                                   0x5
#define _RCSTA_SRENA_POSITION                               0x5
#define _RCSTA_SRENA_SIZE                                   0x1
#define _RCSTA_SRENA_LENGTH                                 0x1
#define _RCSTA_SRENA_MASK                                   0x20
typedef union {
    struct {
        unsigned RX9D                   :1;
        unsigned OERR                   :1;
        unsigned FERR                   :1;
        unsigned ADDEN                  :1;
        unsigned CREN                   :1;
        unsigned SREN                   :1;
        unsigned RX9                    :1;
        unsigned SPEN                   :1;
    };
    struct {
        unsigned                        :3;
        unsigned ADEN                   :1;
    };
    struct {
        unsigned RX9D1                  :1;
        unsigned OERR1                  :1;
        unsigned FERR1                  :1;
        unsigned ADDEN1                 :1;
        unsigned CREN1                  :1;
        unsigned SREN1                  :1;
        unsigned RX91                   :1;
        unsigned SPEN1                  :1;
    };
    struct {
        unsigned RCD8                   :1;
        unsigned                        :5;
        unsigned RC8_9                  :1;
    };
    struct {
        unsigned                        :6;
        unsigned RC9                    :1;
    };
    struct {
        unsigned                        :5;
        unsigned SRENA                  :1;
    };
} RC1STAbits_t;
extern volatile RC1STAbits_t RC1STAbits @ 0xFAB;
// bitfield macros
#define _RC1STA_RX9D_POSN                                   0x0
#define _RC1STA_RX9D_POSITION                               0x0
#define _RC1STA_RX9D_SIZE                                   0x1
#define _RC1STA_RX9D_LENGTH                                 0x1
#define _RC1STA_RX9D_MASK                                   0x1
#define _RC1STA_OERR_POSN                                   0x1
#define _RC1STA_OERR_POSITION                               0x1
#define _RC1STA_OERR_SIZE                                   0x1
#define _RC1STA_OERR_LENGTH                                 0x1
#define _RC1STA_OERR_MASK                                   0x2
#define _RC1STA_FERR_POSN                                   0x2
#define _RC1STA_FERR_POSITION                               0x2
#define _RC1STA_FERR_SIZE                                   0x1
#define _RC1STA_FERR_LENGTH                                 0x1
#define _RC1STA_FERR_MASK                                   0x4
#define _RC1STA_ADDEN_POSN                                  0x3
#define _RC1STA_ADDEN_POSITION                              0x3
#define _RC1STA_ADDEN_SIZE                                  0x1
#define _RC1STA_ADDEN_LENGTH                                0x1
#define _RC1STA_ADDEN_MASK                                  0x8
#define _RC1STA_CREN_POSN                                   0x4
#define _RC1STA_CREN_POSITION                               0x4
#define _RC1STA_CREN_SIZE                                   0x1
#define _RC1STA_CREN_LENGTH                                 0x1
#define _RC1STA_CREN_MASK                                   0x10
#define _RC1STA_SREN_POSN                                   0x5
#define _RC1STA_SREN_POSITION                               0x5
#define _RC1STA_SREN_SIZE                                   0x1
#define _RC1STA_SREN_LENGTH                                 0x1
#define _RC1STA_SREN_MASK                                   0x20
#define _RC1STA_RX9_POSN                                    0x6
#define _RC1STA_RX9_POSITION                                0x6
#define _RC1STA_RX9_SIZE                                    0x1
#define _RC1STA_RX9_LENGTH                                  0x1
#define _RC1STA_RX9_MASK                                    0x40
#define _RC1STA_SPEN_POSN                                   0x7
#define _RC1STA_SPEN_POSITION                               0x7
#define _RC1STA_SPEN_SIZE                                   0x1
#define _RC1STA_SPEN_LENGTH                                 0x1
#define _RC1STA_SPEN_MASK                                   0x80
#define _RC1STA_ADEN_POSN                                   0x3
#define _RC1STA_ADEN_POSITION                               0x3
#define _RC1STA_ADEN_SIZE                                   0x1
#define _RC1STA_ADEN_LENGTH                                 0x1
#define _RC1STA_ADEN_MASK                                   0x8
#define _RC1STA_RX9D1_POSN                                  0x0
#define _RC1STA_RX9D1_POSITION                              0x0
#define _RC1STA_RX9D1_SIZE                                  0x1
#define _RC1STA_RX9D1_LENGTH                                0x1
#define _RC1STA_RX9D1_MASK                                  0x1
#define _RC1STA_OERR1_POSN                                  0x1
#define _RC1STA_OERR1_POSITION                              0x1
#define _RC1STA_OERR1_SIZE                                  0x1
#define _RC1STA_OERR1_LENGTH                                0x1
#define _RC1STA_OERR1_MASK                                  0x2
#define _RC1STA_FERR1_POSN                                  0x2
#define _RC1STA_FERR1_POSITION                              0x2
#define _RC1STA_FERR1_SIZE                                  0x1
#define _RC1STA_FERR1_LENGTH                                0x1
#define _RC1STA_FERR1_MASK                                  0x4
#define _RC1STA_ADDEN1_POSN                                 0x3
#define _RC1STA_ADDEN1_POSITION                             0x3
#define _RC1STA_ADDEN1_SIZE                                 0x1
#define _RC1STA_ADDEN1_LENGTH                               0x1
#define _RC1STA_ADDEN1_MASK                                 0x8
#define _RC1STA_CREN1_POSN                                  0x4
#define _RC1STA_CREN1_POSITION                              0x4
#define _RC1STA_CREN1_SIZE                                  0x1
#define _RC1STA_CREN1_LENGTH                                0x1
#define _RC1STA_CREN1_MASK                                  0x10
#define _RC1STA_SREN1_POSN                                  0x5
#define _RC1STA_SREN1_POSITION                              0x5
#define _RC1STA_SREN1_SIZE                                  0x1
#define _RC1STA_SREN1_LENGTH                                0x1
#define _RC1STA_SREN1_MASK                                  0x20
#define _RC1STA_RX91_POSN                                   0x6
#define _RC1STA_RX91_POSITION                               0x6
#define _RC1STA_RX91_SIZE                                   0x1
#define _RC1STA_RX91_LENGTH                                 0x1
#define _RC1STA_RX91_MASK                                   0x40
#define _RC1STA_SPEN1_POSN                                  0x7
#define _RC1STA_SPEN1_POSITION                              0x7
#define _RC1STA_SPEN1_SIZE                                  0x1
#define _RC1STA_SPEN1_LENGTH                                0x1
#define _RC1STA_SPEN1_MASK                                  0x80
#define _RC1STA_RCD8_POSN                                   0x0
#define _RC1STA_RCD8_POSITION                               0x0
#define _RC1STA_RCD8_SIZE                                   0x1
#define _RC1STA_RCD8_LENGTH                                 0x1
#define _RC1STA_RCD8_MASK                                   0x1
#define _RC1STA_RC8_9_POSN                                  0x6
#define _RC1STA_RC8_9_POSITION                              0x6
#define _RC1STA_RC8_9_SIZE                                  0x1
#define _RC1STA_RC8_9_LENGTH                                0x1
#define _RC1STA_RC8_9_MASK                                  0x40
#define _RC1STA_RC9_POSN                                    0x6
#define _RC1STA_RC9_POSITION                                0x6
#define _RC1STA_RC9_SIZE                                    0x1
#define _RC1STA_RC9_LENGTH                                  0x1
#define _RC1STA_RC9_MASK                                    0x40
#define _RC1STA_SRENA_POSN                                  0x5
#define _RC1STA_SRENA_POSITION                              0x5
#define _RC1STA_SRENA_SIZE                                  0x1
#define _RC1STA_SRENA_LENGTH                                0x1
#define _RC1STA_SRENA_MASK                                  0x20

// Register: TXSTA1
extern volatile unsigned char           TXSTA1              @ 0xFAC;
#ifndef _LIB_BUILD
asm("TXSTA1 equ 0FACh");
#endif
// aliases
extern volatile unsigned char           TXSTA               @ 0xFAC;
#ifndef _LIB_BUILD
asm("TXSTA equ 0FACh");
#endif
extern volatile unsigned char           TX1STA              @ 0xFAC;
#ifndef _LIB_BUILD
asm("TX1STA equ 0FACh");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned TX9D                   :1;
        unsigned TRMT                   :1;
        unsigned BRGH                   :1;
        unsigned SENDB                  :1;
        unsigned SYNC                   :1;
        unsigned TXEN                   :1;
        unsigned TX9                    :1;
        unsigned CSRC                   :1;
    };
    struct {
        unsigned TX9D1                  :1;
        unsigned TRMT1                  :1;
        unsigned BRGH1                  :1;
        unsigned SENDB1                 :1;
        unsigned SYNC1                  :1;
        unsigned TXEN1                  :1;
        unsigned TX91                   :1;
        unsigned CSRC1                  :1;
    };
    struct {
        unsigned TXD8                   :1;
        unsigned                        :5;
        unsigned TX8_9                  :1;
    };
} TXSTA1bits_t;
extern volatile TXSTA1bits_t TXSTA1bits @ 0xFAC;
// bitfield macros
#define _TXSTA1_TX9D_POSN                                   0x0
#define _TXSTA1_TX9D_POSITION                               0x0
#define _TXSTA1_TX9D_SIZE                                   0x1
#define _TXSTA1_TX9D_LENGTH                                 0x1
#define _TXSTA1_TX9D_MASK                                   0x1
#define _TXSTA1_TRMT_POSN                                   0x1
#define _TXSTA1_TRMT_POSITION                               0x1
#define _TXSTA1_TRMT_SIZE                                   0x1
#define _TXSTA1_TRMT_LENGTH                                 0x1
#define _TXSTA1_TRMT_MASK                                   0x2
#define _TXSTA1_BRGH_POSN                                   0x2
#define _TXSTA1_BRGH_POSITION                               0x2
#define _TXSTA1_BRGH_SIZE                                   0x1
#define _TXSTA1_BRGH_LENGTH                                 0x1
#define _TXSTA1_BRGH_MASK                                   0x4
#define _TXSTA1_SENDB_POSN                                  0x3
#define _TXSTA1_SENDB_POSITION                              0x3
#define _TXSTA1_SENDB_SIZE                                  0x1
#define _TXSTA1_SENDB_LENGTH                                0x1
#define _TXSTA1_SENDB_MASK                                  0x8
#define _TXSTA1_SYNC_POSN                                   0x4
#define _TXSTA1_SYNC_POSITION                               0x4
#define _TXSTA1_SYNC_SIZE                                   0x1
#define _TXSTA1_SYNC_LENGTH                                 0x1
#define _TXSTA1_SYNC_MASK                                   0x10
#define _TXSTA1_TXEN_POSN                                   0x5
#define _TXSTA1_TXEN_POSITION                               0x5
#define _TXSTA1_TXEN_SIZE                                   0x1
#define _TXSTA1_TXEN_LENGTH                                 0x1
#define _TXSTA1_TXEN_MASK                                   0x20
#define _TXSTA1_TX9_POSN                                    0x6
#define _TXSTA1_TX9_POSITION                                0x6
#define _TXSTA1_TX9_SIZE                                    0x1
#define _TXSTA1_TX9_LENGTH                                  0x1
#define _TXSTA1_TX9_MASK                                    0x40
#define _TXSTA1_CSRC_POSN                                   0x7
#define _TXSTA1_CSRC_POSITION                               0x7
#define _TXSTA1_CSRC_SIZE                                   0x1
#define _TXSTA1_CSRC_LENGTH                                 0x1
#define _TXSTA1_CSRC_MASK                                   0x80
#define _TXSTA1_TX9D1_POSN                                  0x0
#define _TXSTA1_TX9D1_POSITION                              0x0
#define _TXSTA1_TX9D1_SIZE                                  0x1
#define _TXSTA1_TX9D1_LENGTH                                0x1
#define _TXSTA1_TX9D1_MASK                                  0x1
#define _TXSTA1_TRMT1_POSN                                  0x1
#define _TXSTA1_TRMT1_POSITION                              0x1
#define _TXSTA1_TRMT1_SIZE                                  0x1
#define _TXSTA1_TRMT1_LENGTH                                0x1
#define _TXSTA1_TRMT1_MASK                                  0x2
#define _TXSTA1_BRGH1_POSN                                  0x2
#define _TXSTA1_BRGH1_POSITION                              0x2
#define _TXSTA1_BRGH1_SIZE                                  0x1
#define _TXSTA1_BRGH1_LENGTH                                0x1
#define _TXSTA1_BRGH1_MASK                                  0x4
#define _TXSTA1_SENDB1_POSN                                 0x3
#define _TXSTA1_SENDB1_POSITION                             0x3
#define _TXSTA1_SENDB1_SIZE                                 0x1
#define _TXSTA1_SENDB1_LENGTH                               0x1
#define _TXSTA1_SENDB1_MASK                                 0x8
#define _TXSTA1_SYNC1_POSN                                  0x4
#define _TXSTA1_SYNC1_POSITION                              0x4
#define _TXSTA1_SYNC1_SIZE                                  0x1
#define _TXSTA1_SYNC1_LENGTH                                0x1
#define _TXSTA1_SYNC1_MASK                                  0x10
#define _TXSTA1_TXEN1_POSN                                  0x5
#define _TXSTA1_TXEN1_POSITION                              0x5
#define _TXSTA1_TXEN1_SIZE                                  0x1
#define _TXSTA1_TXEN1_LENGTH                                0x1
#define _TXSTA1_TXEN1_MASK                                  0x20
#define _TXSTA1_TX91_POSN                                   0x6
#define _TXSTA1_TX91_POSITION                               0x6
#define _TXSTA1_TX91_SIZE                                   0x1
#define _TXSTA1_TX91_LENGTH                                 0x1
#define _TXSTA1_TX91_MASK                                   0x40
#define _TXSTA1_CSRC1_POSN                                  0x7
#define _TXSTA1_CSRC1_POSITION                              0x7
#define _TXSTA1_CSRC1_SIZE                                  0x1
#define _TXSTA1_CSRC1_LENGTH                                0x1
#define _TXSTA1_CSRC1_MASK                                  0x80
#define _TXSTA1_TXD8_POSN                                   0x0
#define _TXSTA1_TXD8_POSITION                               0x0
#define _TXSTA1_TXD8_SIZE                                   0x1
#define _TXSTA1_TXD8_LENGTH                                 0x1
#define _TXSTA1_TXD8_MASK                                   0x1
#define _TXSTA1_TX8_9_POSN                                  0x6
#define _TXSTA1_TX8_9_POSITION                              0x6
#define _TXSTA1_TX8_9_SIZE                                  0x1
#define _TXSTA1_TX8_9_LENGTH                                0x1
#define _TXSTA1_TX8_9_MASK                                  0x40
// alias bitfield definitions
typedef union {
    struct {
        unsigned TX9D                   :1;
        unsigned TRMT                   :1;
        unsigned BRGH                   :1;
        unsigned SENDB                  :1;
        unsigned SYNC                   :1;
        unsigned TXEN                   :1;
        unsigned TX9                    :1;
        unsigned CSRC                   :1;
    };
    struct {
        unsigned TX9D1                  :1;
        unsigned TRMT1                  :1;
        unsigned BRGH1                  :1;
        unsigned SENDB1                 :1;
        unsigned SYNC1                  :1;
        unsigned TXEN1                  :1;
        unsigned TX91                   :1;
        unsigned CSRC1                  :1;
    };
    struct {
        unsigned TXD8                   :1;
        unsigned                        :5;
        unsigned TX8_9                  :1;
    };
} TXSTAbits_t;
extern volatile TXSTAbits_t TXSTAbits @ 0xFAC;
// bitfield macros
#define _TXSTA_TX9D_POSN                                    0x0
#define _TXSTA_TX9D_POSITION                                0x0
#define _TXSTA_TX9D_SIZE                                    0x1
#define _TXSTA_TX9D_LENGTH                                  0x1
#define _TXSTA_TX9D_MASK                                    0x1
#define _TXSTA_TRMT_POSN                                    0x1
#define _TXSTA_TRMT_POSITION                                0x1
#define _TXSTA_TRMT_SIZE                                    0x1
#define _TXSTA_TRMT_LENGTH                                  0x1
#define _TXSTA_TRMT_MASK                                    0x2
#define _TXSTA_BRGH_POSN                                    0x2
#define _TXSTA_BRGH_POSITION                                0x2
#define _TXSTA_BRGH_SIZE                                    0x1
#define _TXSTA_BRGH_LENGTH                                  0x1
#define _TXSTA_BRGH_MASK                                    0x4
#define _TXSTA_SENDB_POSN                                   0x3
#define _TXSTA_SENDB_POSITION                               0x3
#define _TXSTA_SENDB_SIZE                                   0x1
#define _TXSTA_SENDB_LENGTH                                 0x1
#define _TXSTA_SENDB_MASK                                   0x8
#define _TXSTA_SYNC_POSN                                    0x4
#define _TXSTA_SYNC_POSITION                                0x4
#define _TXSTA_SYNC_SIZE                                    0x1
#define _TXSTA_SYNC_LENGTH                                  0x1
#define _TXSTA_SYNC_MASK                                    0x10
#define _TXSTA_TXEN_POSN                                    0x5
#define _TXSTA_TXEN_POSITION                                0x5
#define _TXSTA_TXEN_SIZE                                    0x1
#define _TXSTA_TXEN_LENGTH                                  0x1
#define _TXSTA_TXEN_MASK                                    0x20
#define _TXSTA_TX9_POSN                                     0x6
#define _TXSTA_TX9_POSITION                                 0x6
#define _TXSTA_TX9_SIZE                                     0x1
#define _TXSTA_TX9_LENGTH                                   0x1
#define _TXSTA_TX9_MASK                                     0x40
#define _TXSTA_CSRC_POSN                                    0x7
#define _TXSTA_CSRC_POSITION                                0x7
#define _TXSTA_CSRC_SIZE                                    0x1
#define _TXSTA_CSRC_LENGTH                                  0x1
#define _TXSTA_CSRC_MASK                                    0x80
#define _TXSTA_TX9D1_POSN                                   0x0
#define _TXSTA_TX9D1_POSITION                               0x0
#define _TXSTA_TX9D1_SIZE                                   0x1
#define _TXSTA_TX9D1_LENGTH                                 0x1
#define _TXSTA_TX9D1_MASK                                   0x1
#define _TXSTA_TRMT1_POSN                                   0x1
#define _TXSTA_TRMT1_POSITION                               0x1
#define _TXSTA_TRMT1_SIZE                                   0x1
#define _TXSTA_TRMT1_LENGTH                                 0x1
#define _TXSTA_TRMT1_MASK                                   0x2
#define _TXSTA_BRGH1_POSN                                   0x2
#define _TXSTA_BRGH1_POSITION                               0x2
#define _TXSTA_BRGH1_SIZE                                   0x1
#define _TXSTA_BRGH1_LENGTH                                 0x1
#define _TXSTA_BRGH1_MASK                                   0x4
#define _TXSTA_SENDB1_POSN                                  0x3
#define _TXSTA_SENDB1_POSITION                              0x3
#define _TXSTA_SENDB1_SIZE                                  0x1
#define _TXSTA_SENDB1_LENGTH                                0x1
#define _TXSTA_SENDB1_MASK                                  0x8
#define _TXSTA_SYNC1_POSN                                   0x4
#define _TXSTA_SYNC1_POSITION                               0x4
#define _TXSTA_SYNC1_SIZE                                   0x1
#define _TXSTA_SYNC1_LENGTH                                 0x1
#define _TXSTA_SYNC1_MASK                                   0x10
#define _TXSTA_TXEN1_POSN                                   0x5
#define _TXSTA_TXEN1_POSITION                               0x5
#define _TXSTA_TXEN1_SIZE                                   0x1
#define _TXSTA_TXEN1_LENGTH                                 0x1
#define _TXSTA_TXEN1_MASK                                   0x20
#define _TXSTA_TX91_POSN                                    0x6
#define _TXSTA_TX91_POSITION                                0x6
#define _TXSTA_TX91_SIZE                                    0x1
#define _TXSTA_TX91_LENGTH                                  0x1
#define _TXSTA_TX91_MASK                                    0x40
#define _TXSTA_CSRC1_POSN                                   0x7
#define _TXSTA_CSRC1_POSITION                               0x7
#define _TXSTA_CSRC1_SIZE                                   0x1
#define _TXSTA_CSRC1_LENGTH                                 0x1
#define _TXSTA_CSRC1_MASK                                   0x80
#define _TXSTA_TXD8_POSN                                    0x0
#define _TXSTA_TXD8_POSITION                                0x0
#define _TXSTA_TXD8_SIZE                                    0x1
#define _TXSTA_TXD8_LENGTH                                  0x1
#define _TXSTA_TXD8_MASK                                    0x1
#define _TXSTA_TX8_9_POSN                                   0x6
#define _TXSTA_TX8_9_POSITION                               0x6
#define _TXSTA_TX8_9_SIZE                                   0x1
#define _TXSTA_TX8_9_LENGTH                                 0x1
#define _TXSTA_TX8_9_MASK                                   0x40
typedef union {
    struct {
        unsigned TX9D                   :1;
        unsigned TRMT                   :1;
        unsigned BRGH                   :1;
        unsigned SENDB                  :1;
        unsigned SYNC                   :1;
        unsigned TXEN                   :1;
        unsigned TX9                    :1;
        unsigned CSRC                   :1;
    };
    struct {
        unsigned TX9D1                  :1;
        unsigned TRMT1                  :1;
        unsigned BRGH1                  :1;
        unsigned SENDB1                 :1;
        unsigned SYNC1                  :1;
        unsigned TXEN1                  :1;
        unsigned TX91                   :1;
        unsigned CSRC1                  :1;
    };
    struct {
        unsigned TXD8                   :1;
        unsigned                        :5;
        unsigned TX8_9                  :1;
    };
} TX1STAbits_t;
extern volatile TX1STAbits_t TX1STAbits @ 0xFAC;
// bitfield macros
#define _TX1STA_TX9D_POSN                                   0x0
#define _TX1STA_TX9D_POSITION                               0x0
#define _TX1STA_TX9D_SIZE                                   0x1
#define _TX1STA_TX9D_LENGTH                                 0x1
#define _TX1STA_TX9D_MASK                                   0x1
#define _TX1STA_TRMT_POSN                                   0x1
#define _TX1STA_TRMT_POSITION                               0x1
#define _TX1STA_TRMT_SIZE                                   0x1
#define _TX1STA_TRMT_LENGTH                                 0x1
#define _TX1STA_TRMT_MASK                                   0x2
#define _TX1STA_BRGH_POSN                                   0x2
#define _TX1STA_BRGH_POSITION                               0x2
#define _TX1STA_BRGH_SIZE                                   0x1
#define _TX1STA_BRGH_LENGTH                                 0x1
#define _TX1STA_BRGH_MASK                                   0x4
#define _TX1STA_SENDB_POSN                                  0x3
#define _TX1STA_SENDB_POSITION                              0x3
#define _TX1STA_SENDB_SIZE                                  0x1
#define _TX1STA_SENDB_LENGTH                                0x1
#define _TX1STA_SENDB_MASK                                  0x8
#define _TX1STA_SYNC_POSN                                   0x4
#define _TX1STA_SYNC_POSITION                               0x4
#define _TX1STA_SYNC_SIZE                                   0x1
#define _TX1STA_SYNC_LENGTH                                 0x1
#define _TX1STA_SYNC_MASK                                   0x10
#define _TX1STA_TXEN_POSN                                   0x5
#define _TX1STA_TXEN_POSITION                               0x5
#define _TX1STA_TXEN_SIZE                                   0x1
#define _TX1STA_TXEN_LENGTH                                 0x1
#define _TX1STA_TXEN_MASK                                   0x20
#define _TX1STA_TX9_POSN                                    0x6
#define _TX1STA_TX9_POSITION                                0x6
#define _TX1STA_TX9_SIZE                                    0x1
#define _TX1STA_TX9_LENGTH                                  0x1
#define _TX1STA_TX9_MASK                                    0x40
#define _TX1STA_CSRC_POSN                                   0x7
#define _TX1STA_CSRC_POSITION                               0x7
#define _TX1STA_CSRC_SIZE                                   0x1
#define _TX1STA_CSRC_LENGTH                                 0x1
#define _TX1STA_CSRC_MASK                                   0x80
#define _TX1STA_TX9D1_POSN                                  0x0
#define _TX1STA_TX9D1_POSITION                              0x0
#define _TX1STA_TX9D1_SIZE                                  0x1
#define _TX1STA_TX9D1_LENGTH                                0x1
#define _TX1STA_TX9D1_MASK                                  0x1
#define _TX1STA_TRMT1_POSN                                  0x1
#define _TX1STA_TRMT1_POSITION                              0x1
#define _TX1STA_TRMT1_SIZE                                  0x1
#define _TX1STA_TRMT1_LENGTH                                0x1
#define _TX1STA_TRMT1_MASK                                  0x2
#define _TX1STA_BRGH1_POSN                                  0x2
#define _TX1STA_BRGH1_POSITION                              0x2
#define _TX1STA_BRGH1_SIZE                                  0x1
#define _TX1STA_BRGH1_LENGTH                                0x1
#define _TX1STA_BRGH1_MASK                                  0x4
#define _TX1STA_SENDB1_POSN                                 0x3
#define _TX1STA_SENDB1_POSITION                             0x3
#define _TX1STA_SENDB1_SIZE                                 0x1
#define _TX1STA_SENDB1_LENGTH                               0x1
#define _TX1STA_SENDB1_MASK                                 0x8
#define _TX1STA_SYNC1_POSN                                  0x4
#define _TX1STA_SYNC1_POSITION                              0x4
#define _TX1STA_SYNC1_SIZE                                  0x1
#define _TX1STA_SYNC1_LENGTH                                0x1
#define _TX1STA_SYNC1_MASK                                  0x10
#define _TX1STA_TXEN1_POSN                                  0x5
#define _TX1STA_TXEN1_POSITION                              0x5
#define _TX1STA_TXEN1_SIZE                                  0x1
#define _TX1STA_TXEN1_LENGTH                                0x1
#define _TX1STA_TXEN1_MASK                                  0x20
#define _TX1STA_TX91_POSN                                   0x6
#define _TX1STA_TX91_POSITION                               0x6
#define _TX1STA_TX91_SIZE                                   0x1
#define _TX1STA_TX91_LENGTH                                 0x1
#define _TX1STA_TX91_MASK                                   0x40
#define _TX1STA_CSRC1_POSN                                  0x7
#define _TX1STA_CSRC1_POSITION                              0x7
#define _TX1STA_CSRC1_SIZE                                  0x1
#define _TX1STA_CSRC1_LENGTH                                0x1
#define _TX1STA_CSRC1_MASK                                  0x80
#define _TX1STA_TXD8_POSN                                   0x0
#define _TX1STA_TXD8_POSITION                               0x0
#define _TX1STA_TXD8_SIZE                                   0x1
#define _TX1STA_TXD8_LENGTH                                 0x1
#define _TX1STA_TXD8_MASK                                   0x1
#define _TX1STA_TX8_9_POSN                                  0x6
#define _TX1STA_TX8_9_POSITION                              0x6
#define _TX1STA_TX8_9_SIZE                                  0x1
#define _TX1STA_TX8_9_LENGTH                                0x1
#define _TX1STA_TX8_9_MASK                                  0x40

// Register: TXREG1
extern volatile unsigned char           TXREG1              @ 0xFAD;
#ifndef _LIB_BUILD
asm("TXREG1 equ 0FADh");
#endif
// aliases
extern volatile unsigned char           TXREG               @ 0xFAD;
#ifndef _LIB_BUILD
asm("TXREG equ 0FADh");
#endif
extern volatile unsigned char           TX1REG              @ 0xFAD;
#ifndef _LIB_BUILD
asm("TX1REG equ 0FADh");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned TX1REG                 :8;
    };
    struct {
        unsigned TXREG                  :8;
    };
} TXREG1bits_t;
extern volatile TXREG1bits_t TXREG1bits @ 0xFAD;
// bitfield macros
#define _TXREG1_TX1REG_POSN                                 0x0
#define _TXREG1_TX1REG_POSITION                             0x0
#define _TXREG1_TX1REG_SIZE                                 0x8
#define _TXREG1_TX1REG_LENGTH                               0x8
#define _TXREG1_TX1REG_MASK                                 0xFF
#define _TXREG1_TXREG_POSN                                  0x0
#define _TXREG1_TXREG_POSITION                              0x0
#define _TXREG1_TXREG_SIZE                                  0x8
#define _TXREG1_TXREG_LENGTH                                0x8
#define _TXREG1_TXREG_MASK                                  0xFF
// alias bitfield definitions
typedef union {
    struct {
        unsigned TX1REG                 :8;
    };
    struct {
        unsigned TXREG                  :8;
    };
} TXREGbits_t;
extern volatile TXREGbits_t TXREGbits @ 0xFAD;
// bitfield macros
#define _TXREG_TX1REG_POSN                                  0x0
#define _TXREG_TX1REG_POSITION                              0x0
#define _TXREG_TX1REG_SIZE                                  0x8
#define _TXREG_TX1REG_LENGTH                                0x8
#define _TXREG_TX1REG_MASK                                  0xFF
#define _TXREG_TXREG_POSN                                   0x0
#define _TXREG_TXREG_POSITION                               0x0
#define _TXREG_TXREG_SIZE                                   0x8
#define _TXREG_TXREG_LENGTH                                 0x8
#define _TXREG_TXREG_MASK                                   0xFF
typedef union {
    struct {
        unsigned TX1REG                 :8;
    };
    struct {
        unsigned TXREG                  :8;
    };
} TX1REGbits_t;
extern volatile TX1REGbits_t TX1REGbits @ 0xFAD;
// bitfield macros
#define _TX1REG_TX1REG_POSN                                 0x0
#define _TX1REG_TX1REG_POSITION                             0x0
#define _TX1REG_TX1REG_SIZE                                 0x8
#define _TX1REG_TX1REG_LENGTH                               0x8
#define _TX1REG_TX1REG_MASK                                 0xFF
#define _TX1REG_TXREG_POSN                                  0x0
#define _TX1REG_TXREG_POSITION                              0x0
#define _TX1REG_TXREG_SIZE                                  0x8
#define _TX1REG_TXREG_LENGTH                                0x8
#define _TX1REG_TXREG_MASK                                  0xFF

// Register: RCREG1
extern volatile unsigned char           RCREG1              @ 0xFAE;
#ifndef _LIB_BUILD
asm("RCREG1 equ 0FAEh");
#endif
// aliases
extern volatile unsigned char           RCREG               @ 0xFAE;
#ifndef _LIB_BUILD
asm("RCREG equ 0FAEh");
#endif
extern volatile unsigned char           RC1REG              @ 0xFAE;
#ifndef _LIB_BUILD
asm("RC1REG equ 0FAEh");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned RC1REG                 :8;
    };
    struct {
        unsigned RCREG                  :8;
    };
} RCREG1bits_t;
extern volatile RCREG1bits_t RCREG1bits @ 0xFAE;
// bitfield macros
#define _RCREG1_RC1REG_POSN                                 0x0
#define _RCREG1_RC1REG_POSITION                             0x0
#define _RCREG1_RC1REG_SIZE                                 0x8
#define _RCREG1_RC1REG_LENGTH                               0x8
#define _RCREG1_RC1REG_MASK                                 0xFF
#define _RCREG1_RCREG_POSN                                  0x0
#define _RCREG1_RCREG_POSITION                              0x0
#define _RCREG1_RCREG_SIZE                                  0x8
#define _RCREG1_RCREG_LENGTH                                0x8
#define _RCREG1_RCREG_MASK                                  0xFF
// alias bitfield definitions
typedef union {
    struct {
        unsigned RC1REG                 :8;
    };
    struct {
        unsigned RCREG                  :8;
    };
} RCREGbits_t;
extern volatile RCREGbits_t RCREGbits @ 0xFAE;
// bitfield macros
#define _RCREG_RC1REG_POSN                                  0x0
#define _RCREG_RC1REG_POSITION                              0x0
#define _RCREG_RC1REG_SIZE                                  0x8
#define _RCREG_RC1REG_LENGTH                                0x8
#define _RCREG_RC1REG_MASK                                  0xFF
#define _RCREG_RCREG_POSN                                   0x0
#define _RCREG_RCREG_POSITION                               0x0
#define _RCREG_RCREG_SIZE                                   0x8
#define _RCREG_RCREG_LENGTH                                 0x8
#define _RCREG_RCREG_MASK                                   0xFF
typedef union {
    struct {
        unsigned RC1REG                 :8;
    };
    struct {
        unsigned RCREG                  :8;
    };
} RC1REGbits_t;
extern volatile RC1REGbits_t RC1REGbits @ 0xFAE;
// bitfield macros
#define _RC1REG_RC1REG_POSN                                 0x0
#define _RC1REG_RC1REG_POSITION                             0x0
#define _RC1REG_RC1REG_SIZE                                 0x8
#define _RC1REG_RC1REG_LENGTH                               0x8
#define _RC1REG_RC1REG_MASK                                 0xFF
#define _RC1REG_RCREG_POSN                                  0x0
#define _RC1REG_RCREG_POSITION                              0x0
#define _RC1REG_RCREG_SIZE                                  0x8
#define _RC1REG_RCREG_LENGTH                                0x8
#define _RC1REG_RCREG_MASK                                  0xFF

// Register: SPBRG1
extern volatile unsigned char           SPBRG1              @ 0xFAF;
#ifndef _LIB_BUILD
asm("SPBRG1 equ 0FAFh");
#endif
// aliases
extern volatile unsigned char           SPBRG               @ 0xFAF;
#ifndef _LIB_BUILD
asm("SPBRG equ 0FAFh");
#endif
extern volatile unsigned char           SP1BRG              @ 0xFAF;
#ifndef _LIB_BUILD
asm("SP1BRG equ 0FAFh");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned SP1BRG                 :8;
    };
    struct {
        unsigned SPBRG                  :8;
    };
} SPBRG1bits_t;
extern volatile SPBRG1bits_t SPBRG1bits @ 0xFAF;
// bitfield macros
#define _SPBRG1_SP1BRG_POSN                                 0x0
#define _SPBRG1_SP1BRG_POSITION                             0x0
#define _SPBRG1_SP1BRG_SIZE                                 0x8
#define _SPBRG1_SP1BRG_LENGTH                               0x8
#define _SPBRG1_SP1BRG_MASK                                 0xFF
#define _SPBRG1_SPBRG_POSN                                  0x0
#define _SPBRG1_SPBRG_POSITION                              0x0
#define _SPBRG1_SPBRG_SIZE                                  0x8
#define _SPBRG1_SPBRG_LENGTH                                0x8
#define _SPBRG1_SPBRG_MASK                                  0xFF
// alias bitfield definitions
typedef union {
    struct {
        unsigned SP1BRG                 :8;
    };
    struct {
        unsigned SPBRG                  :8;
    };
} SPBRGbits_t;
extern volatile SPBRGbits_t SPBRGbits @ 0xFAF;
// bitfield macros
#define _SPBRG_SP1BRG_POSN                                  0x0
#define _SPBRG_SP1BRG_POSITION                              0x0
#define _SPBRG_SP1BRG_SIZE                                  0x8
#define _SPBRG_SP1BRG_LENGTH                                0x8
#define _SPBRG_SP1BRG_MASK                                  0xFF
#define _SPBRG_SPBRG_POSN                                   0x0
#define _SPBRG_SPBRG_POSITION                               0x0
#define _SPBRG_SPBRG_SIZE                                   0x8
#define _SPBRG_SPBRG_LENGTH                                 0x8
#define _SPBRG_SPBRG_MASK                                   0xFF
typedef union {
    struct {
        unsigned SP1BRG                 :8;
    };
    struct {
        unsigned SPBRG                  :8;
    };
} SP1BRGbits_t;
extern volatile SP1BRGbits_t SP1BRGbits @ 0xFAF;
// bitfield macros
#define _SP1BRG_SP1BRG_POSN                                 0x0
#define _SP1BRG_SP1BRG_POSITION                             0x0
#define _SP1BRG_SP1BRG_SIZE                                 0x8
#define _SP1BRG_SP1BRG_LENGTH                               0x8
#define _SP1BRG_SP1BRG_MASK                                 0xFF
#define _SP1BRG_SPBRG_POSN                                  0x0
#define _SP1BRG_SPBRG_POSITION                              0x0
#define _SP1BRG_SPBRG_SIZE                                  0x8
#define _SP1BRG_SPBRG_LENGTH                                0x8
#define _SP1BRG_SPBRG_MASK                                  0xFF

// Register: SPBRGH1
extern volatile unsigned char           SPBRGH1             @ 0xFB0;
#ifndef _LIB_BUILD
asm("SPBRGH1 equ 0FB0h");
#endif
// aliases
extern volatile unsigned char           SPBRGH              @ 0xFB0;
#ifndef _LIB_BUILD
asm("SPBRGH equ 0FB0h");
#endif
extern volatile unsigned char           SP1BRGH             @ 0xFB0;
#ifndef _LIB_BUILD
asm("SP1BRGH equ 0FB0h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned SP1BRGH                :8;
    };
    struct {
        unsigned SPBRGH                 :8;
    };
} SPBRGH1bits_t;
extern volatile SPBRGH1bits_t SPBRGH1bits @ 0xFB0;
// bitfield macros
#define _SPBRGH1_SP1BRGH_POSN                               0x0
#define _SPBRGH1_SP1BRGH_POSITION                           0x0
#define _SPBRGH1_SP1BRGH_SIZE                               0x8
#define _SPBRGH1_SP1BRGH_LENGTH                             0x8
#define _SPBRGH1_SP1BRGH_MASK                               0xFF
#define _SPBRGH1_SPBRGH_POSN                                0x0
#define _SPBRGH1_SPBRGH_POSITION                            0x0
#define _SPBRGH1_SPBRGH_SIZE                                0x8
#define _SPBRGH1_SPBRGH_LENGTH                              0x8
#define _SPBRGH1_SPBRGH_MASK                                0xFF
// alias bitfield definitions
typedef union {
    struct {
        unsigned SP1BRGH                :8;
    };
    struct {
        unsigned SPBRGH                 :8;
    };
} SPBRGHbits_t;
extern volatile SPBRGHbits_t SPBRGHbits @ 0xFB0;
// bitfield macros
#define _SPBRGH_SP1BRGH_POSN                                0x0
#define _SPBRGH_SP1BRGH_POSITION                            0x0
#define _SPBRGH_SP1BRGH_SIZE                                0x8
#define _SPBRGH_SP1BRGH_LENGTH                              0x8
#define _SPBRGH_SP1BRGH_MASK                                0xFF
#define _SPBRGH_SPBRGH_POSN                                 0x0
#define _SPBRGH_SPBRGH_POSITION                             0x0
#define _SPBRGH_SPBRGH_SIZE                                 0x8
#define _SPBRGH_SPBRGH_LENGTH                               0x8
#define _SPBRGH_SPBRGH_MASK                                 0xFF
typedef union {
    struct {
        unsigned SP1BRGH                :8;
    };
    struct {
        unsigned SPBRGH                 :8;
    };
} SP1BRGHbits_t;
extern volatile SP1BRGHbits_t SP1BRGHbits @ 0xFB0;
// bitfield macros
#define _SP1BRGH_SP1BRGH_POSN                               0x0
#define _SP1BRGH_SP1BRGH_POSITION                           0x0
#define _SP1BRGH_SP1BRGH_SIZE                               0x8
#define _SP1BRGH_SP1BRGH_LENGTH                             0x8
#define _SP1BRGH_SP1BRGH_MASK                               0xFF
#define _SP1BRGH_SPBRGH_POSN                                0x0
#define _SP1BRGH_SPBRGH_POSITION                            0x0
#define _SP1BRGH_SPBRGH_SIZE                                0x8
#define _SP1BRGH_SPBRGH_LENGTH                              0x8
#define _SP1BRGH_SPBRGH_MASK                                0xFF

// Register: T3CON
extern volatile unsigned char           T3CON               @ 0xFB1;
#ifndef _LIB_BUILD
asm("T3CON equ 0FB1h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned                        :2;
        unsigned NOT_T3SYNC             :1;
    };
    struct {
        unsigned TMR3ON                 :1;
        unsigned T3RD16                 :1;
        unsigned nT3SYNC                :1;
        unsigned T3SOSCEN               :1;
        unsigned T3CKPS                 :2;
        unsigned TMR3CS                 :2;
    };
    struct {
        unsigned                        :3;
        unsigned T3OSCEN                :1;
        unsigned T3CKPS0                :1;
        unsigned T3CKPS1                :1;
        unsigned TMR3CS0                :1;
        unsigned TMR3CS1                :1;
    };
    struct {
        unsigned                        :3;
        unsigned SOSCEN3                :1;
        unsigned                        :3;
        unsigned RD163                  :1;
    };
} T3CONbits_t;
extern volatile T3CONbits_t T3CONbits @ 0xFB1;
// bitfield macros
#define _T3CON_NOT_T3SYNC_POSN                              0x2
#define _T3CON_NOT_T3SYNC_POSITION                          0x2
#define _T3CON_NOT_T3SYNC_SIZE                              0x1
#define _T3CON_NOT_T3SYNC_LENGTH                            0x1
#define _T3CON_NOT_T3SYNC_MASK                              0x4
#define _T3CON_TMR3ON_POSN                                  0x0
#define _T3CON_TMR3ON_POSITION                              0x0
#define _T3CON_TMR3ON_SIZE                                  0x1
#define _T3CON_TMR3ON_LENGTH                                0x1
#define _T3CON_TMR3ON_MASK                                  0x1
#define _T3CON_T3RD16_POSN                                  0x1
#define _T3CON_T3RD16_POSITION                              0x1
#define _T3CON_T3RD16_SIZE                                  0x1
#define _T3CON_T3RD16_LENGTH                                0x1
#define _T3CON_T3RD16_MASK                                  0x2
#define _T3CON_nT3SYNC_POSN                                 0x2
#define _T3CON_nT3SYNC_POSITION                             0x2
#define _T3CON_nT3SYNC_SIZE                                 0x1
#define _T3CON_nT3SYNC_LENGTH                               0x1
#define _T3CON_nT3SYNC_MASK                                 0x4
#define _T3CON_T3SOSCEN_POSN                                0x3
#define _T3CON_T3SOSCEN_POSITION                            0x3
#define _T3CON_T3SOSCEN_SIZE                                0x1
#define _T3CON_T3SOSCEN_LENGTH                              0x1
#define _T3CON_T3SOSCEN_MASK                                0x8
#define _T3CON_T3CKPS_POSN                                  0x4
#define _T3CON_T3CKPS_POSITION                              0x4
#define _T3CON_T3CKPS_SIZE                                  0x2
#define _T3CON_T3CKPS_LENGTH                                0x2
#define _T3CON_T3CKPS_MASK                                  0x30
#define _T3CON_TMR3CS_POSN                                  0x6
#define _T3CON_TMR3CS_POSITION                              0x6
#define _T3CON_TMR3CS_SIZE                                  0x2
#define _T3CON_TMR3CS_LENGTH                                0x2
#define _T3CON_TMR3CS_MASK                                  0xC0
#define _T3CON_T3OSCEN_POSN                                 0x3
#define _T3CON_T3OSCEN_POSITION                             0x3
#define _T3CON_T3OSCEN_SIZE                                 0x1
#define _T3CON_T3OSCEN_LENGTH                               0x1
#define _T3CON_T3OSCEN_MASK                                 0x8
#define _T3CON_T3CKPS0_POSN                                 0x4
#define _T3CON_T3CKPS0_POSITION                             0x4
#define _T3CON_T3CKPS0_SIZE                                 0x1
#define _T3CON_T3CKPS0_LENGTH                               0x1
#define _T3CON_T3CKPS0_MASK                                 0x10
#define _T3CON_T3CKPS1_POSN                                 0x5
#define _T3CON_T3CKPS1_POSITION                             0x5
#define _T3CON_T3CKPS1_SIZE                                 0x1
#define _T3CON_T3CKPS1_LENGTH                               0x1
#define _T3CON_T3CKPS1_MASK                                 0x20
#define _T3CON_TMR3CS0_POSN                                 0x6
#define _T3CON_TMR3CS0_POSITION                             0x6
#define _T3CON_TMR3CS0_SIZE                                 0x1
#define _T3CON_TMR3CS0_LENGTH                               0x1
#define _T3CON_TMR3CS0_MASK                                 0x40
#define _T3CON_TMR3CS1_POSN                                 0x7
#define _T3CON_TMR3CS1_POSITION                             0x7
#define _T3CON_TMR3CS1_SIZE                                 0x1
#define _T3CON_TMR3CS1_LENGTH                               0x1
#define _T3CON_TMR3CS1_MASK                                 0x80
#define _T3CON_SOSCEN3_POSN                                 0x3
#define _T3CON_SOSCEN3_POSITION                             0x3
#define _T3CON_SOSCEN3_SIZE                                 0x1
#define _T3CON_SOSCEN3_LENGTH                               0x1
#define _T3CON_SOSCEN3_MASK                                 0x8
#define _T3CON_RD163_POSN                                   0x7
#define _T3CON_RD163_POSITION                               0x7
#define _T3CON_RD163_SIZE                                   0x1
#define _T3CON_RD163_LENGTH                                 0x1
#define _T3CON_RD163_MASK                                   0x80

// Register: TMR3
extern volatile unsigned short          TMR3                @ 0xFB2;
#ifndef _LIB_BUILD
asm("TMR3 equ 0FB2h");
#endif

// Register: TMR3L
extern volatile unsigned char           TMR3L               @ 0xFB2;
#ifndef _LIB_BUILD
asm("TMR3L equ 0FB2h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned TMR3L                  :8;
    };
} TMR3Lbits_t;
extern volatile TMR3Lbits_t TMR3Lbits @ 0xFB2;
// bitfield macros
#define _TMR3L_TMR3L_POSN                                   0x0
#define _TMR3L_TMR3L_POSITION                               0x0
#define _TMR3L_TMR3L_SIZE                                   0x8
#define _TMR3L_TMR3L_LENGTH                                 0x8
#define _TMR3L_TMR3L_MASK                                   0xFF

// Register: TMR3H
extern volatile unsigned char           TMR3H               @ 0xFB3;
#ifndef _LIB_BUILD
asm("TMR3H equ 0FB3h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned TMR3H                  :8;
    };
} TMR3Hbits_t;
extern volatile TMR3Hbits_t TMR3Hbits @ 0xFB3;
// bitfield macros
#define _TMR3H_TMR3H_POSN                                   0x0
#define _TMR3H_TMR3H_POSITION                               0x0
#define _TMR3H_TMR3H_SIZE                                   0x8
#define _TMR3H_TMR3H_LENGTH                                 0x8
#define _TMR3H_TMR3H_MASK                                   0xFF

// Register: T3GCON
extern volatile unsigned char           T3GCON              @ 0xFB4;
#ifndef _LIB_BUILD
asm("T3GCON equ 0FB4h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned                        :3;
        unsigned T3GGO_NOT_DONE         :1;
    };
    struct {
        unsigned T3GSS                  :2;
        unsigned T3GVAL                 :1;
        unsigned T3GGO_nDONE            :1;
        unsigned T3GSPM                 :1;
        unsigned T3GTM                  :1;
        unsigned T3GPOL                 :1;
        unsigned TMR3GE                 :1;
    };
    struct {
        unsigned T3GSS0                 :1;
        unsigned T3GSS1                 :1;
        unsigned                        :1;
        unsigned T3G_DONE               :1;
    };
    struct {
        unsigned                        :3;
        unsigned T3GGO                  :1;
    };
} T3GCONbits_t;
extern volatile T3GCONbits_t T3GCONbits @ 0xFB4;
// bitfield macros
#define _T3GCON_T3GGO_NOT_DONE_POSN                         0x3
#define _T3GCON_T3GGO_NOT_DONE_POSITION                     0x3
#define _T3GCON_T3GGO_NOT_DONE_SIZE                         0x1
#define _T3GCON_T3GGO_NOT_DONE_LENGTH                       0x1
#define _T3GCON_T3GGO_NOT_DONE_MASK                         0x8
#define _T3GCON_T3GSS_POSN                                  0x0
#define _T3GCON_T3GSS_POSITION                              0x0
#define _T3GCON_T3GSS_SIZE                                  0x2
#define _T3GCON_T3GSS_LENGTH                                0x2
#define _T3GCON_T3GSS_MASK                                  0x3
#define _T3GCON_T3GVAL_POSN                                 0x2
#define _T3GCON_T3GVAL_POSITION                             0x2
#define _T3GCON_T3GVAL_SIZE                                 0x1
#define _T3GCON_T3GVAL_LENGTH                               0x1
#define _T3GCON_T3GVAL_MASK                                 0x4
#define _T3GCON_T3GGO_nDONE_POSN                            0x3
#define _T3GCON_T3GGO_nDONE_POSITION                        0x3
#define _T3GCON_T3GGO_nDONE_SIZE                            0x1
#define _T3GCON_T3GGO_nDONE_LENGTH                          0x1
#define _T3GCON_T3GGO_nDONE_MASK                            0x8
#define _T3GCON_T3GSPM_POSN                                 0x4
#define _T3GCON_T3GSPM_POSITION                             0x4
#define _T3GCON_T3GSPM_SIZE                                 0x1
#define _T3GCON_T3GSPM_LENGTH                               0x1
#define _T3GCON_T3GSPM_MASK                                 0x10
#define _T3GCON_T3GTM_POSN                                  0x5
#define _T3GCON_T3GTM_POSITION                              0x5
#define _T3GCON_T3GTM_SIZE                                  0x1
#define _T3GCON_T3GTM_LENGTH                                0x1
#define _T3GCON_T3GTM_MASK                                  0x20
#define _T3GCON_T3GPOL_POSN                                 0x6
#define _T3GCON_T3GPOL_POSITION                             0x6
#define _T3GCON_T3GPOL_SIZE                                 0x1
#define _T3GCON_T3GPOL_LENGTH                               0x1
#define _T3GCON_T3GPOL_MASK                                 0x40
#define _T3GCON_TMR3GE_POSN                                 0x7
#define _T3GCON_TMR3GE_POSITION                             0x7
#define _T3GCON_TMR3GE_SIZE                                 0x1
#define _T3GCON_TMR3GE_LENGTH                               0x1
#define _T3GCON_TMR3GE_MASK                                 0x80
#define _T3GCON_T3GSS0_POSN                                 0x0
#define _T3GCON_T3GSS0_POSITION                             0x0
#define _T3GCON_T3GSS0_SIZE                                 0x1
#define _T3GCON_T3GSS0_LENGTH                               0x1
#define _T3GCON_T3GSS0_MASK                                 0x1
#define _T3GCON_T3GSS1_POSN                                 0x1
#define _T3GCON_T3GSS1_POSITION                             0x1
#define _T3GCON_T3GSS1_SIZE                                 0x1
#define _T3GCON_T3GSS1_LENGTH                               0x1
#define _T3GCON_T3GSS1_MASK                                 0x2
#define _T3GCON_T3G_DONE_POSN                               0x3
#define _T3GCON_T3G_DONE_POSITION                           0x3
#define _T3GCON_T3G_DONE_SIZE                               0x1
#define _T3GCON_T3G_DONE_LENGTH                             0x1
#define _T3GCON_T3G_DONE_MASK                               0x8
#define _T3GCON_T3GGO_POSN                                  0x3
#define _T3GCON_T3GGO_POSITION                              0x3
#define _T3GCON_T3GGO_SIZE                                  0x1
#define _T3GCON_T3GGO_LENGTH                                0x1
#define _T3GCON_T3GGO_MASK                                  0x8

// Register: ECCP1AS
extern volatile unsigned char           ECCP1AS             @ 0xFB6;
#ifndef _LIB_BUILD
asm("ECCP1AS equ 0FB6h");
#endif
// aliases
extern volatile unsigned char           ECCPAS              @ 0xFB6;
#ifndef _LIB_BUILD
asm("ECCPAS equ 0FB6h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned P1SSBD                 :2;
        unsigned P1SSAC                 :2;
        unsigned CCP1AS                 :3;
        unsigned CCP1ASE                :1;
    };
    struct {
        unsigned P1SSBD0                :1;
        unsigned P1SSBD1                :1;
        unsigned P1SSAC0                :1;
        unsigned P1SSAC1                :1;
        unsigned CCP1AS0                :1;
        unsigned CCP1AS1                :1;
        unsigned CCP1AS2                :1;
    };
    struct {
        unsigned PSS1BD                 :2;
        unsigned PSS1AC                 :2;
    };
    struct {
        unsigned PSS1BD0                :1;
        unsigned PSS1BD1                :1;
        unsigned PSS1AC0                :1;
        unsigned PSS1AC1                :1;
    };
    struct {
        unsigned PSSBD                  :2;
        unsigned PSSAC                  :2;
        unsigned ECCPAS                 :3;
        unsigned ECCPASE                :1;
    };
    struct {
        unsigned PSSBD0                 :1;
        unsigned PSSBD1                 :1;
        unsigned PSSAC0                 :1;
        unsigned PSSAC1                 :1;
        unsigned ECCPAS0                :1;
        unsigned ECCPAS1                :1;
        unsigned ECCPAS2                :1;
    };
} ECCP1ASbits_t;
extern volatile ECCP1ASbits_t ECCP1ASbits @ 0xFB6;
// bitfield macros
#define _ECCP1AS_P1SSBD_POSN                                0x0
#define _ECCP1AS_P1SSBD_POSITION                            0x0
#define _ECCP1AS_P1SSBD_SIZE                                0x2
#define _ECCP1AS_P1SSBD_LENGTH                              0x2
#define _ECCP1AS_P1SSBD_MASK                                0x3
#define _ECCP1AS_P1SSAC_POSN                                0x2
#define _ECCP1AS_P1SSAC_POSITION                            0x2
#define _ECCP1AS_P1SSAC_SIZE                                0x2
#define _ECCP1AS_P1SSAC_LENGTH                              0x2
#define _ECCP1AS_P1SSAC_MASK                                0xC
#define _ECCP1AS_CCP1AS_POSN                                0x4
#define _ECCP1AS_CCP1AS_POSITION                            0x4
#define _ECCP1AS_CCP1AS_SIZE                                0x3
#define _ECCP1AS_CCP1AS_LENGTH                              0x3
#define _ECCP1AS_CCP1AS_MASK                                0x70
#define _ECCP1AS_CCP1ASE_POSN                               0x7
#define _ECCP1AS_CCP1ASE_POSITION                           0x7
#define _ECCP1AS_CCP1ASE_SIZE                               0x1
#define _ECCP1AS_CCP1ASE_LENGTH                             0x1
#define _ECCP1AS_CCP1ASE_MASK                               0x80
#define _ECCP1AS_P1SSBD0_POSN                               0x0
#define _ECCP1AS_P1SSBD0_POSITION                           0x0
#define _ECCP1AS_P1SSBD0_SIZE                               0x1
#define _ECCP1AS_P1SSBD0_LENGTH                             0x1
#define _ECCP1AS_P1SSBD0_MASK                               0x1
#define _ECCP1AS_P1SSBD1_POSN                               0x1
#define _ECCP1AS_P1SSBD1_POSITION                           0x1
#define _ECCP1AS_P1SSBD1_SIZE                               0x1
#define _ECCP1AS_P1SSBD1_LENGTH                             0x1
#define _ECCP1AS_P1SSBD1_MASK                               0x2
#define _ECCP1AS_P1SSAC0_POSN                               0x2
#define _ECCP1AS_P1SSAC0_POSITION                           0x2
#define _ECCP1AS_P1SSAC0_SIZE                               0x1
#define _ECCP1AS_P1SSAC0_LENGTH                             0x1
#define _ECCP1AS_P1SSAC0_MASK                               0x4
#define _ECCP1AS_P1SSAC1_POSN                               0x3
#define _ECCP1AS_P1SSAC1_POSITION                           0x3
#define _ECCP1AS_P1SSAC1_SIZE                               0x1
#define _ECCP1AS_P1SSAC1_LENGTH                             0x1
#define _ECCP1AS_P1SSAC1_MASK                               0x8
#define _ECCP1AS_CCP1AS0_POSN                               0x4
#define _ECCP1AS_CCP1AS0_POSITION                           0x4
#define _ECCP1AS_CCP1AS0_SIZE                               0x1
#define _ECCP1AS_CCP1AS0_LENGTH                             0x1
#define _ECCP1AS_CCP1AS0_MASK                               0x10
#define _ECCP1AS_CCP1AS1_POSN                               0x5
#define _ECCP1AS_CCP1AS1_POSITION                           0x5
#define _ECCP1AS_CCP1AS1_SIZE                               0x1
#define _ECCP1AS_CCP1AS1_LENGTH                             0x1
#define _ECCP1AS_CCP1AS1_MASK                               0x20
#define _ECCP1AS_CCP1AS2_POSN                               0x6
#define _ECCP1AS_CCP1AS2_POSITION                           0x6
#define _ECCP1AS_CCP1AS2_SIZE                               0x1
#define _ECCP1AS_CCP1AS2_LENGTH                             0x1
#define _ECCP1AS_CCP1AS2_MASK                               0x40
#define _ECCP1AS_PSS1BD_POSN                                0x0
#define _ECCP1AS_PSS1BD_POSITION                            0x0
#define _ECCP1AS_PSS1BD_SIZE                                0x2
#define _ECCP1AS_PSS1BD_LENGTH                              0x2
#define _ECCP1AS_PSS1BD_MASK                                0x3
#define _ECCP1AS_PSS1AC_POSN                                0x2
#define _ECCP1AS_PSS1AC_POSITION                            0x2
#define _ECCP1AS_PSS1AC_SIZE                                0x2
#define _ECCP1AS_PSS1AC_LENGTH                              0x2
#define _ECCP1AS_PSS1AC_MASK                                0xC
#define _ECCP1AS_PSS1BD0_POSN                               0x0
#define _ECCP1AS_PSS1BD0_POSITION                           0x0
#define _ECCP1AS_PSS1BD0_SIZE                               0x1
#define _ECCP1AS_PSS1BD0_LENGTH                             0x1
#define _ECCP1AS_PSS1BD0_MASK                               0x1
#define _ECCP1AS_PSS1BD1_POSN                               0x1
#define _ECCP1AS_PSS1BD1_POSITION                           0x1
#define _ECCP1AS_PSS1BD1_SIZE                               0x1
#define _ECCP1AS_PSS1BD1_LENGTH                             0x1
#define _ECCP1AS_PSS1BD1_MASK                               0x2
#define _ECCP1AS_PSS1AC0_POSN                               0x2
#define _ECCP1AS_PSS1AC0_POSITION                           0x2
#define _ECCP1AS_PSS1AC0_SIZE                               0x1
#define _ECCP1AS_PSS1AC0_LENGTH                             0x1
#define _ECCP1AS_PSS1AC0_MASK                               0x4
#define _ECCP1AS_PSS1AC1_POSN                               0x3
#define _ECCP1AS_PSS1AC1_POSITION                           0x3
#define _ECCP1AS_PSS1AC1_SIZE                               0x1
#define _ECCP1AS_PSS1AC1_LENGTH                             0x1
#define _ECCP1AS_PSS1AC1_MASK                               0x8
#define _ECCP1AS_PSSBD_POSN                                 0x0
#define _ECCP1AS_PSSBD_POSITION                             0x0
#define _ECCP1AS_PSSBD_SIZE                                 0x2
#define _ECCP1AS_PSSBD_LENGTH                               0x2
#define _ECCP1AS_PSSBD_MASK                                 0x3
#define _ECCP1AS_PSSAC_POSN                                 0x2
#define _ECCP1AS_PSSAC_POSITION                             0x2
#define _ECCP1AS_PSSAC_SIZE                                 0x2
#define _ECCP1AS_PSSAC_LENGTH                               0x2
#define _ECCP1AS_PSSAC_MASK                                 0xC
#define _ECCP1AS_ECCPAS_POSN                                0x4
#define _ECCP1AS_ECCPAS_POSITION                            0x4
#define _ECCP1AS_ECCPAS_SIZE                                0x3
#define _ECCP1AS_ECCPAS_LENGTH                              0x3
#define _ECCP1AS_ECCPAS_MASK                                0x70
#define _ECCP1AS_ECCPASE_POSN                               0x7
#define _ECCP1AS_ECCPASE_POSITION                           0x7
#define _ECCP1AS_ECCPASE_SIZE                               0x1
#define _ECCP1AS_ECCPASE_LENGTH                             0x1
#define _ECCP1AS_ECCPASE_MASK                               0x80
#define _ECCP1AS_PSSBD0_POSN                                0x0
#define _ECCP1AS_PSSBD0_POSITION                            0x0
#define _ECCP1AS_PSSBD0_SIZE                                0x1
#define _ECCP1AS_PSSBD0_LENGTH                              0x1
#define _ECCP1AS_PSSBD0_MASK                                0x1
#define _ECCP1AS_PSSBD1_POSN                                0x1
#define _ECCP1AS_PSSBD1_POSITION                            0x1
#define _ECCP1AS_PSSBD1_SIZE                                0x1
#define _ECCP1AS_PSSBD1_LENGTH                              0x1
#define _ECCP1AS_PSSBD1_MASK                                0x2
#define _ECCP1AS_PSSAC0_POSN                                0x2
#define _ECCP1AS_PSSAC0_POSITION                            0x2
#define _ECCP1AS_PSSAC0_SIZE                                0x1
#define _ECCP1AS_PSSAC0_LENGTH                              0x1
#define _ECCP1AS_PSSAC0_MASK                                0x4
#define _ECCP1AS_PSSAC1_POSN                                0x3
#define _ECCP1AS_PSSAC1_POSITION                            0x3
#define _ECCP1AS_PSSAC1_SIZE                                0x1
#define _ECCP1AS_PSSAC1_LENGTH                              0x1
#define _ECCP1AS_PSSAC1_MASK                                0x8
#define _ECCP1AS_ECCPAS0_POSN                               0x4
#define _ECCP1AS_ECCPAS0_POSITION                           0x4
#define _ECCP1AS_ECCPAS0_SIZE                               0x1
#define _ECCP1AS_ECCPAS0_LENGTH                             0x1
#define _ECCP1AS_ECCPAS0_MASK                               0x10
#define _ECCP1AS_ECCPAS1_POSN                               0x5
#define _ECCP1AS_ECCPAS1_POSITION                           0x5
#define _ECCP1AS_ECCPAS1_SIZE                               0x1
#define _ECCP1AS_ECCPAS1_LENGTH                             0x1
#define _ECCP1AS_ECCPAS1_MASK                               0x20
#define _ECCP1AS_ECCPAS2_POSN                               0x6
#define _ECCP1AS_ECCPAS2_POSITION                           0x6
#define _ECCP1AS_ECCPAS2_SIZE                               0x1
#define _ECCP1AS_ECCPAS2_LENGTH                             0x1
#define _ECCP1AS_ECCPAS2_MASK                               0x40
// alias bitfield definitions
typedef union {
    struct {
        unsigned P1SSBD                 :2;
        unsigned P1SSAC                 :2;
        unsigned CCP1AS                 :3;
        unsigned CCP1ASE                :1;
    };
    struct {
        unsigned P1SSBD0                :1;
        unsigned P1SSBD1                :1;
        unsigned P1SSAC0                :1;
        unsigned P1SSAC1                :1;
        unsigned CCP1AS0                :1;
        unsigned CCP1AS1                :1;
        unsigned CCP1AS2                :1;
    };
    struct {
        unsigned PSS1BD                 :2;
        unsigned PSS1AC                 :2;
    };
    struct {
        unsigned PSS1BD0                :1;
        unsigned PSS1BD1                :1;
        unsigned PSS1AC0                :1;
        unsigned PSS1AC1                :1;
    };
    struct {
        unsigned PSSBD                  :2;
        unsigned PSSAC                  :2;
        unsigned ECCPAS                 :3;
        unsigned ECCPASE                :1;
    };
    struct {
        unsigned PSSBD0                 :1;
        unsigned PSSBD1                 :1;
        unsigned PSSAC0                 :1;
        unsigned PSSAC1                 :1;
        unsigned ECCPAS0                :1;
        unsigned ECCPAS1                :1;
        unsigned ECCPAS2                :1;
    };
} ECCPASbits_t;
extern volatile ECCPASbits_t ECCPASbits @ 0xFB6;
// bitfield macros
#define _ECCPAS_P1SSBD_POSN                                 0x0
#define _ECCPAS_P1SSBD_POSITION                             0x0
#define _ECCPAS_P1SSBD_SIZE                                 0x2
#define _ECCPAS_P1SSBD_LENGTH                               0x2
#define _ECCPAS_P1SSBD_MASK                                 0x3
#define _ECCPAS_P1SSAC_POSN                                 0x2
#define _ECCPAS_P1SSAC_POSITION                             0x2
#define _ECCPAS_P1SSAC_SIZE                                 0x2
#define _ECCPAS_P1SSAC_LENGTH                               0x2
#define _ECCPAS_P1SSAC_MASK                                 0xC
#define _ECCPAS_CCP1AS_POSN                                 0x4
#define _ECCPAS_CCP1AS_POSITION                             0x4
#define _ECCPAS_CCP1AS_SIZE                                 0x3
#define _ECCPAS_CCP1AS_LENGTH                               0x3
#define _ECCPAS_CCP1AS_MASK                                 0x70
#define _ECCPAS_CCP1ASE_POSN                                0x7
#define _ECCPAS_CCP1ASE_POSITION                            0x7
#define _ECCPAS_CCP1ASE_SIZE                                0x1
#define _ECCPAS_CCP1ASE_LENGTH                              0x1
#define _ECCPAS_CCP1ASE_MASK                                0x80
#define _ECCPAS_P1SSBD0_POSN                                0x0
#define _ECCPAS_P1SSBD0_POSITION                            0x0
#define _ECCPAS_P1SSBD0_SIZE                                0x1
#define _ECCPAS_P1SSBD0_LENGTH                              0x1
#define _ECCPAS_P1SSBD0_MASK                                0x1
#define _ECCPAS_P1SSBD1_POSN                                0x1
#define _ECCPAS_P1SSBD1_POSITION                            0x1
#define _ECCPAS_P1SSBD1_SIZE                                0x1
#define _ECCPAS_P1SSBD1_LENGTH                              0x1
#define _ECCPAS_P1SSBD1_MASK                                0x2
#define _ECCPAS_P1SSAC0_POSN                                0x2
#define _ECCPAS_P1SSAC0_POSITION                            0x2
#define _ECCPAS_P1SSAC0_SIZE                                0x1
#define _ECCPAS_P1SSAC0_LENGTH                              0x1
#define _ECCPAS_P1SSAC0_MASK                                0x4
#define _ECCPAS_P1SSAC1_POSN                                0x3
#define _ECCPAS_P1SSAC1_POSITION                            0x3
#define _ECCPAS_P1SSAC1_SIZE                                0x1
#define _ECCPAS_P1SSAC1_LENGTH                              0x1
#define _ECCPAS_P1SSAC1_MASK                                0x8
#define _ECCPAS_CCP1AS0_POSN                                0x4
#define _ECCPAS_CCP1AS0_POSITION                            0x4
#define _ECCPAS_CCP1AS0_SIZE                                0x1
#define _ECCPAS_CCP1AS0_LENGTH                              0x1
#define _ECCPAS_CCP1AS0_MASK                                0x10
#define _ECCPAS_CCP1AS1_POSN                                0x5
#define _ECCPAS_CCP1AS1_POSITION                            0x5
#define _ECCPAS_CCP1AS1_SIZE                                0x1
#define _ECCPAS_CCP1AS1_LENGTH                              0x1
#define _ECCPAS_CCP1AS1_MASK                                0x20
#define _ECCPAS_CCP1AS2_POSN                                0x6
#define _ECCPAS_CCP1AS2_POSITION                            0x6
#define _ECCPAS_CCP1AS2_SIZE                                0x1
#define _ECCPAS_CCP1AS2_LENGTH                              0x1
#define _ECCPAS_CCP1AS2_MASK                                0x40
#define _ECCPAS_PSS1BD_POSN                                 0x0
#define _ECCPAS_PSS1BD_POSITION                             0x0
#define _ECCPAS_PSS1BD_SIZE                                 0x2
#define _ECCPAS_PSS1BD_LENGTH                               0x2
#define _ECCPAS_PSS1BD_MASK                                 0x3
#define _ECCPAS_PSS1AC_POSN                                 0x2
#define _ECCPAS_PSS1AC_POSITION                             0x2
#define _ECCPAS_PSS1AC_SIZE                                 0x2
#define _ECCPAS_PSS1AC_LENGTH                               0x2
#define _ECCPAS_PSS1AC_MASK                                 0xC
#define _ECCPAS_PSS1BD0_POSN                                0x0
#define _ECCPAS_PSS1BD0_POSITION                            0x0
#define _ECCPAS_PSS1BD0_SIZE                                0x1
#define _ECCPAS_PSS1BD0_LENGTH                              0x1
#define _ECCPAS_PSS1BD0_MASK                                0x1
#define _ECCPAS_PSS1BD1_POSN                                0x1
#define _ECCPAS_PSS1BD1_POSITION                            0x1
#define _ECCPAS_PSS1BD1_SIZE                                0x1
#define _ECCPAS_PSS1BD1_LENGTH                              0x1
#define _ECCPAS_PSS1BD1_MASK                                0x2
#define _ECCPAS_PSS1AC0_POSN                                0x2
#define _ECCPAS_PSS1AC0_POSITION                            0x2
#define _ECCPAS_PSS1AC0_SIZE                                0x1
#define _ECCPAS_PSS1AC0_LENGTH                              0x1
#define _ECCPAS_PSS1AC0_MASK                                0x4
#define _ECCPAS_PSS1AC1_POSN                                0x3
#define _ECCPAS_PSS1AC1_POSITION                            0x3
#define _ECCPAS_PSS1AC1_SIZE                                0x1
#define _ECCPAS_PSS1AC1_LENGTH                              0x1
#define _ECCPAS_PSS1AC1_MASK                                0x8
#define _ECCPAS_PSSBD_POSN                                  0x0
#define _ECCPAS_PSSBD_POSITION                              0x0
#define _ECCPAS_PSSBD_SIZE                                  0x2
#define _ECCPAS_PSSBD_LENGTH                                0x2
#define _ECCPAS_PSSBD_MASK                                  0x3
#define _ECCPAS_PSSAC_POSN                                  0x2
#define _ECCPAS_PSSAC_POSITION                              0x2
#define _ECCPAS_PSSAC_SIZE                                  0x2
#define _ECCPAS_PSSAC_LENGTH                                0x2
#define _ECCPAS_PSSAC_MASK                                  0xC
#define _ECCPAS_ECCPAS_POSN                                 0x4
#define _ECCPAS_ECCPAS_POSITION                             0x4
#define _ECCPAS_ECCPAS_SIZE                                 0x3
#define _ECCPAS_ECCPAS_LENGTH                               0x3
#define _ECCPAS_ECCPAS_MASK                                 0x70
#define _ECCPAS_ECCPASE_POSN                                0x7
#define _ECCPAS_ECCPASE_POSITION                            0x7
#define _ECCPAS_ECCPASE_SIZE                                0x1
#define _ECCPAS_ECCPASE_LENGTH                              0x1
#define _ECCPAS_ECCPASE_MASK                                0x80
#define _ECCPAS_PSSBD0_POSN                                 0x0
#define _ECCPAS_PSSBD0_POSITION                             0x0
#define _ECCPAS_PSSBD0_SIZE                                 0x1
#define _ECCPAS_PSSBD0_LENGTH                               0x1
#define _ECCPAS_PSSBD0_MASK                                 0x1
#define _ECCPAS_PSSBD1_POSN                                 0x1
#define _ECCPAS_PSSBD1_POSITION                             0x1
#define _ECCPAS_PSSBD1_SIZE                                 0x1
#define _ECCPAS_PSSBD1_LENGTH                               0x1
#define _ECCPAS_PSSBD1_MASK                                 0x2
#define _ECCPAS_PSSAC0_POSN                                 0x2
#define _ECCPAS_PSSAC0_POSITION                             0x2
#define _ECCPAS_PSSAC0_SIZE                                 0x1
#define _ECCPAS_PSSAC0_LENGTH                               0x1
#define _ECCPAS_PSSAC0_MASK                                 0x4
#define _ECCPAS_PSSAC1_POSN                                 0x3
#define _ECCPAS_PSSAC1_POSITION                             0x3
#define _ECCPAS_PSSAC1_SIZE                                 0x1
#define _ECCPAS_PSSAC1_LENGTH                               0x1
#define _ECCPAS_PSSAC1_MASK                                 0x8
#define _ECCPAS_ECCPAS0_POSN                                0x4
#define _ECCPAS_ECCPAS0_POSITION                            0x4
#define _ECCPAS_ECCPAS0_SIZE                                0x1
#define _ECCPAS_ECCPAS0_LENGTH                              0x1
#define _ECCPAS_ECCPAS0_MASK                                0x10
#define _ECCPAS_ECCPAS1_POSN                                0x5
#define _ECCPAS_ECCPAS1_POSITION                            0x5
#define _ECCPAS_ECCPAS1_SIZE                                0x1
#define _ECCPAS_ECCPAS1_LENGTH                              0x1
#define _ECCPAS_ECCPAS1_MASK                                0x20
#define _ECCPAS_ECCPAS2_POSN                                0x6
#define _ECCPAS_ECCPAS2_POSITION                            0x6
#define _ECCPAS_ECCPAS2_SIZE                                0x1
#define _ECCPAS_ECCPAS2_LENGTH                              0x1
#define _ECCPAS_ECCPAS2_MASK                                0x40

// Register: PWM1CON
extern volatile unsigned char           PWM1CON             @ 0xFB7;
#ifndef _LIB_BUILD
asm("PWM1CON equ 0FB7h");
#endif
// aliases
extern volatile unsigned char           PWMCON              @ 0xFB7;
#ifndef _LIB_BUILD
asm("PWMCON equ 0FB7h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned P1DC                   :7;
        unsigned P1RSEN                 :1;
    };
    struct {
        unsigned P1DC0                  :1;
        unsigned P1DC1                  :1;
        unsigned P1DC2                  :1;
        unsigned P1DC3                  :1;
        unsigned P1DC4                  :1;
        unsigned P1DC5                  :1;
        unsigned P1DC6                  :1;
    };
    struct {
        unsigned PDC                    :7;
        unsigned PRSEN                  :1;
    };
    struct {
        unsigned PDC0                   :1;
        unsigned PDC1                   :1;
        unsigned PDC2                   :1;
        unsigned PDC3                   :1;
        unsigned PDC4                   :1;
        unsigned PDC5                   :1;
        unsigned PDC6                   :1;
    };
} PWM1CONbits_t;
extern volatile PWM1CONbits_t PWM1CONbits @ 0xFB7;
// bitfield macros
#define _PWM1CON_P1DC_POSN                                  0x0
#define _PWM1CON_P1DC_POSITION                              0x0
#define _PWM1CON_P1DC_SIZE                                  0x7
#define _PWM1CON_P1DC_LENGTH                                0x7
#define _PWM1CON_P1DC_MASK                                  0x7F
#define _PWM1CON_P1RSEN_POSN                                0x7
#define _PWM1CON_P1RSEN_POSITION                            0x7
#define _PWM1CON_P1RSEN_SIZE                                0x1
#define _PWM1CON_P1RSEN_LENGTH                              0x1
#define _PWM1CON_P1RSEN_MASK                                0x80
#define _PWM1CON_P1DC0_POSN                                 0x0
#define _PWM1CON_P1DC0_POSITION                             0x0
#define _PWM1CON_P1DC0_SIZE                                 0x1
#define _PWM1CON_P1DC0_LENGTH                               0x1
#define _PWM1CON_P1DC0_MASK                                 0x1
#define _PWM1CON_P1DC1_POSN                                 0x1
#define _PWM1CON_P1DC1_POSITION                             0x1
#define _PWM1CON_P1DC1_SIZE                                 0x1
#define _PWM1CON_P1DC1_LENGTH                               0x1
#define _PWM1CON_P1DC1_MASK                                 0x2
#define _PWM1CON_P1DC2_POSN                                 0x2
#define _PWM1CON_P1DC2_POSITION                             0x2
#define _PWM1CON_P1DC2_SIZE                                 0x1
#define _PWM1CON_P1DC2_LENGTH                               0x1
#define _PWM1CON_P1DC2_MASK                                 0x4
#define _PWM1CON_P1DC3_POSN                                 0x3
#define _PWM1CON_P1DC3_POSITION                             0x3
#define _PWM1CON_P1DC3_SIZE                                 0x1
#define _PWM1CON_P1DC3_LENGTH                               0x1
#define _PWM1CON_P1DC3_MASK                                 0x8
#define _PWM1CON_P1DC4_POSN                                 0x4
#define _PWM1CON_P1DC4_POSITION                             0x4
#define _PWM1CON_P1DC4_SIZE                                 0x1
#define _PWM1CON_P1DC4_LENGTH                               0x1
#define _PWM1CON_P1DC4_MASK                                 0x10
#define _PWM1CON_P1DC5_POSN                                 0x5
#define _PWM1CON_P1DC5_POSITION                             0x5
#define _PWM1CON_P1DC5_SIZE                                 0x1
#define _PWM1CON_P1DC5_LENGTH                               0x1
#define _PWM1CON_P1DC5_MASK                                 0x20
#define _PWM1CON_P1DC6_POSN                                 0x6
#define _PWM1CON_P1DC6_POSITION                             0x6
#define _PWM1CON_P1DC6_SIZE                                 0x1
#define _PWM1CON_P1DC6_LENGTH                               0x1
#define _PWM1CON_P1DC6_MASK                                 0x40
#define _PWM1CON_PDC_POSN                                   0x0
#define _PWM1CON_PDC_POSITION                               0x0
#define _PWM1CON_PDC_SIZE                                   0x7
#define _PWM1CON_PDC_LENGTH                                 0x7
#define _PWM1CON_PDC_MASK                                   0x7F
#define _PWM1CON_PRSEN_POSN                                 0x7
#define _PWM1CON_PRSEN_POSITION                             0x7
#define _PWM1CON_PRSEN_SIZE                                 0x1
#define _PWM1CON_PRSEN_LENGTH                               0x1
#define _PWM1CON_PRSEN_MASK                                 0x80
#define _PWM1CON_PDC0_POSN                                  0x0
#define _PWM1CON_PDC0_POSITION                              0x0
#define _PWM1CON_PDC0_SIZE                                  0x1
#define _PWM1CON_PDC0_LENGTH                                0x1
#define _PWM1CON_PDC0_MASK                                  0x1
#define _PWM1CON_PDC1_POSN                                  0x1
#define _PWM1CON_PDC1_POSITION                              0x1
#define _PWM1CON_PDC1_SIZE                                  0x1
#define _PWM1CON_PDC1_LENGTH                                0x1
#define _PWM1CON_PDC1_MASK                                  0x2
#define _PWM1CON_PDC2_POSN                                  0x2
#define _PWM1CON_PDC2_POSITION                              0x2
#define _PWM1CON_PDC2_SIZE                                  0x1
#define _PWM1CON_PDC2_LENGTH                                0x1
#define _PWM1CON_PDC2_MASK                                  0x4
#define _PWM1CON_PDC3_POSN                                  0x3
#define _PWM1CON_PDC3_POSITION                              0x3
#define _PWM1CON_PDC3_SIZE                                  0x1
#define _PWM1CON_PDC3_LENGTH                                0x1
#define _PWM1CON_PDC3_MASK                                  0x8
#define _PWM1CON_PDC4_POSN                                  0x4
#define _PWM1CON_PDC4_POSITION                              0x4
#define _PWM1CON_PDC4_SIZE                                  0x1
#define _PWM1CON_PDC4_LENGTH                                0x1
#define _PWM1CON_PDC4_MASK                                  0x10
#define _PWM1CON_PDC5_POSN                                  0x5
#define _PWM1CON_PDC5_POSITION                              0x5
#define _PWM1CON_PDC5_SIZE                                  0x1
#define _PWM1CON_PDC5_LENGTH                                0x1
#define _PWM1CON_PDC5_MASK                                  0x20
#define _PWM1CON_PDC6_POSN                                  0x6
#define _PWM1CON_PDC6_POSITION                              0x6
#define _PWM1CON_PDC6_SIZE                                  0x1
#define _PWM1CON_PDC6_LENGTH                                0x1
#define _PWM1CON_PDC6_MASK                                  0x40
// alias bitfield definitions
typedef union {
    struct {
        unsigned P1DC                   :7;
        unsigned P1RSEN                 :1;
    };
    struct {
        unsigned P1DC0                  :1;
        unsigned P1DC1                  :1;
        unsigned P1DC2                  :1;
        unsigned P1DC3                  :1;
        unsigned P1DC4                  :1;
        unsigned P1DC5                  :1;
        unsigned P1DC6                  :1;
    };
    struct {
        unsigned PDC                    :7;
        unsigned PRSEN                  :1;
    };
    struct {
        unsigned PDC0                   :1;
        unsigned PDC1                   :1;
        unsigned PDC2                   :1;
        unsigned PDC3                   :1;
        unsigned PDC4                   :1;
        unsigned PDC5                   :1;
        unsigned PDC6                   :1;
    };
} PWMCONbits_t;
extern volatile PWMCONbits_t PWMCONbits @ 0xFB7;
// bitfield macros
#define _PWMCON_P1DC_POSN                                   0x0
#define _PWMCON_P1DC_POSITION                               0x0
#define _PWMCON_P1DC_SIZE                                   0x7
#define _PWMCON_P1DC_LENGTH                                 0x7
#define _PWMCON_P1DC_MASK                                   0x7F
#define _PWMCON_P1RSEN_POSN                                 0x7
#define _PWMCON_P1RSEN_POSITION                             0x7
#define _PWMCON_P1RSEN_SIZE                                 0x1
#define _PWMCON_P1RSEN_LENGTH                               0x1
#define _PWMCON_P1RSEN_MASK                                 0x80
#define _PWMCON_P1DC0_POSN                                  0x0
#define _PWMCON_P1DC0_POSITION                              0x0
#define _PWMCON_P1DC0_SIZE                                  0x1
#define _PWMCON_P1DC0_LENGTH                                0x1
#define _PWMCON_P1DC0_MASK                                  0x1
#define _PWMCON_P1DC1_POSN                                  0x1
#define _PWMCON_P1DC1_POSITION                              0x1
#define _PWMCON_P1DC1_SIZE                                  0x1
#define _PWMCON_P1DC1_LENGTH                                0x1
#define _PWMCON_P1DC1_MASK                                  0x2
#define _PWMCON_P1DC2_POSN                                  0x2
#define _PWMCON_P1DC2_POSITION                              0x2
#define _PWMCON_P1DC2_SIZE                                  0x1
#define _PWMCON_P1DC2_LENGTH                                0x1
#define _PWMCON_P1DC2_MASK                                  0x4
#define _PWMCON_P1DC3_POSN                                  0x3
#define _PWMCON_P1DC3_POSITION                              0x3
#define _PWMCON_P1DC3_SIZE                                  0x1
#define _PWMCON_P1DC3_LENGTH                                0x1
#define _PWMCON_P1DC3_MASK                                  0x8
#define _PWMCON_P1DC4_POSN                                  0x4
#define _PWMCON_P1DC4_POSITION                              0x4
#define _PWMCON_P1DC4_SIZE                                  0x1
#define _PWMCON_P1DC4_LENGTH                                0x1
#define _PWMCON_P1DC4_MASK                                  0x10
#define _PWMCON_P1DC5_POSN                                  0x5
#define _PWMCON_P1DC5_POSITION                              0x5
#define _PWMCON_P1DC5_SIZE                                  0x1
#define _PWMCON_P1DC5_LENGTH                                0x1
#define _PWMCON_P1DC5_MASK                                  0x20
#define _PWMCON_P1DC6_POSN                                  0x6
#define _PWMCON_P1DC6_POSITION                              0x6
#define _PWMCON_P1DC6_SIZE                                  0x1
#define _PWMCON_P1DC6_LENGTH                                0x1
#define _PWMCON_P1DC6_MASK                                  0x40
#define _PWMCON_PDC_POSN                                    0x0
#define _PWMCON_PDC_POSITION                                0x0
#define _PWMCON_PDC_SIZE                                    0x7
#define _PWMCON_PDC_LENGTH                                  0x7
#define _PWMCON_PDC_MASK                                    0x7F
#define _PWMCON_PRSEN_POSN                                  0x7
#define _PWMCON_PRSEN_POSITION                              0x7
#define _PWMCON_PRSEN_SIZE                                  0x1
#define _PWMCON_PRSEN_LENGTH                                0x1
#define _PWMCON_PRSEN_MASK                                  0x80
#define _PWMCON_PDC0_POSN                                   0x0
#define _PWMCON_PDC0_POSITION                               0x0
#define _PWMCON_PDC0_SIZE                                   0x1
#define _PWMCON_PDC0_LENGTH                                 0x1
#define _PWMCON_PDC0_MASK                                   0x1
#define _PWMCON_PDC1_POSN                                   0x1
#define _PWMCON_PDC1_POSITION                               0x1
#define _PWMCON_PDC1_SIZE                                   0x1
#define _PWMCON_PDC1_LENGTH                                 0x1
#define _PWMCON_PDC1_MASK                                   0x2
#define _PWMCON_PDC2_POSN                                   0x2
#define _PWMCON_PDC2_POSITION                               0x2
#define _PWMCON_PDC2_SIZE                                   0x1
#define _PWMCON_PDC2_LENGTH                                 0x1
#define _PWMCON_PDC2_MASK                                   0x4
#define _PWMCON_PDC3_POSN                                   0x3
#define _PWMCON_PDC3_POSITION                               0x3
#define _PWMCON_PDC3_SIZE                                   0x1
#define _PWMCON_PDC3_LENGTH                                 0x1
#define _PWMCON_PDC3_MASK                                   0x8
#define _PWMCON_PDC4_POSN                                   0x4
#define _PWMCON_PDC4_POSITION                               0x4
#define _PWMCON_PDC4_SIZE                                   0x1
#define _PWMCON_PDC4_LENGTH                                 0x1
#define _PWMCON_PDC4_MASK                                   0x10
#define _PWMCON_PDC5_POSN                                   0x5
#define _PWMCON_PDC5_POSITION                               0x5
#define _PWMCON_PDC5_SIZE                                   0x1
#define _PWMCON_PDC5_LENGTH                                 0x1
#define _PWMCON_PDC5_MASK                                   0x20
#define _PWMCON_PDC6_POSN                                   0x6
#define _PWMCON_PDC6_POSITION                               0x6
#define _PWMCON_PDC6_SIZE                                   0x1
#define _PWMCON_PDC6_LENGTH                                 0x1
#define _PWMCON_PDC6_MASK                                   0x40

// Register: BAUDCON1
extern volatile unsigned char           BAUDCON1            @ 0xFB8;
#ifndef _LIB_BUILD
asm("BAUDCON1 equ 0FB8h");
#endif
// aliases
extern volatile unsigned char           BAUDCON             @ 0xFB8;
#ifndef _LIB_BUILD
asm("BAUDCON equ 0FB8h");
#endif
extern volatile unsigned char           BAUDCTL             @ 0xFB8;
#ifndef _LIB_BUILD
asm("BAUDCTL equ 0FB8h");
#endif
extern volatile unsigned char           BAUD1CON            @ 0xFB8;
#ifndef _LIB_BUILD
asm("BAUD1CON equ 0FB8h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned ABDEN                  :1;
        unsigned WUE                    :1;
        unsigned                        :1;
        unsigned BRG16                  :1;
        unsigned CKTXP                  :1;
        unsigned DTRXP                  :1;
        unsigned RCIDL                  :1;
        unsigned ABDOVF                 :1;
    };
    struct {
        unsigned                        :4;
        unsigned SCKP                   :1;
    };
    struct {
        unsigned ABDEN1                 :1;
        unsigned WUE1                   :1;
        unsigned                        :1;
        unsigned BRG161                 :1;
        unsigned SCKP1                  :1;
        unsigned DTRXP1                 :1;
        unsigned RCIDL1                 :1;
        unsigned ABDOVF1                :1;
    };
    struct {
        unsigned                        :4;
        unsigned TXCKP                  :1;
        unsigned RXDTP                  :1;
        unsigned RCMT                   :1;
    };
    struct {
        unsigned                        :4;
        unsigned TXCKP1                 :1;
        unsigned RXDTP1                 :1;
        unsigned RCMT1                  :1;
    };
    struct {
        unsigned                        :5;
        unsigned RXCKP                  :1;
    };
    struct {
        unsigned                        :1;
        unsigned W4E                    :1;
    };
} BAUDCON1bits_t;
extern volatile BAUDCON1bits_t BAUDCON1bits @ 0xFB8;
// bitfield macros
#define _BAUDCON1_ABDEN_POSN                                0x0
#define _BAUDCON1_ABDEN_POSITION                            0x0
#define _BAUDCON1_ABDEN_SIZE                                0x1
#define _BAUDCON1_ABDEN_LENGTH                              0x1
#define _BAUDCON1_ABDEN_MASK                                0x1
#define _BAUDCON1_WUE_POSN                                  0x1
#define _BAUDCON1_WUE_POSITION                              0x1
#define _BAUDCON1_WUE_SIZE                                  0x1
#define _BAUDCON1_WUE_LENGTH                                0x1
#define _BAUDCON1_WUE_MASK                                  0x2
#define _BAUDCON1_BRG16_POSN                                0x3
#define _BAUDCON1_BRG16_POSITION                            0x3
#define _BAUDCON1_BRG16_SIZE                                0x1
#define _BAUDCON1_BRG16_LENGTH                              0x1
#define _BAUDCON1_BRG16_MASK                                0x8
#define _BAUDCON1_CKTXP_POSN                                0x4
#define _BAUDCON1_CKTXP_POSITION                            0x4
#define _BAUDCON1_CKTXP_SIZE                                0x1
#define _BAUDCON1_CKTXP_LENGTH                              0x1
#define _BAUDCON1_CKTXP_MASK                                0x10
#define _BAUDCON1_DTRXP_POSN                                0x5
#define _BAUDCON1_DTRXP_POSITION                            0x5
#define _BAUDCON1_DTRXP_SIZE                                0x1
#define _BAUDCON1_DTRXP_LENGTH                              0x1
#define _BAUDCON1_DTRXP_MASK                                0x20
#define _BAUDCON1_RCIDL_POSN                                0x6
#define _BAUDCON1_RCIDL_POSITION                            0x6
#define _BAUDCON1_RCIDL_SIZE                                0x1
#define _BAUDCON1_RCIDL_LENGTH                              0x1
#define _BAUDCON1_RCIDL_MASK                                0x40
#define _BAUDCON1_ABDOVF_POSN                               0x7
#define _BAUDCON1_ABDOVF_POSITION                           0x7
#define _BAUDCON1_ABDOVF_SIZE                               0x1
#define _BAUDCON1_ABDOVF_LENGTH                             0x1
#define _BAUDCON1_ABDOVF_MASK                               0x80
#define _BAUDCON1_SCKP_POSN                                 0x4
#define _BAUDCON1_SCKP_POSITION                             0x4
#define _BAUDCON1_SCKP_SIZE                                 0x1
#define _BAUDCON1_SCKP_LENGTH                               0x1
#define _BAUDCON1_SCKP_MASK                                 0x10
#define _BAUDCON1_ABDEN1_POSN                               0x0
#define _BAUDCON1_ABDEN1_POSITION                           0x0
#define _BAUDCON1_ABDEN1_SIZE                               0x1
#define _BAUDCON1_ABDEN1_LENGTH                             0x1
#define _BAUDCON1_ABDEN1_MASK                               0x1
#define _BAUDCON1_WUE1_POSN                                 0x1
#define _BAUDCON1_WUE1_POSITION                             0x1
#define _BAUDCON1_WUE1_SIZE                                 0x1
#define _BAUDCON1_WUE1_LENGTH                               0x1
#define _BAUDCON1_WUE1_MASK                                 0x2
#define _BAUDCON1_BRG161_POSN                               0x3
#define _BAUDCON1_BRG161_POSITION                           0x3
#define _BAUDCON1_BRG161_SIZE                               0x1
#define _BAUDCON1_BRG161_LENGTH                             0x1
#define _BAUDCON1_BRG161_MASK                               0x8
#define _BAUDCON1_SCKP1_POSN                                0x4
#define _BAUDCON1_SCKP1_POSITION                            0x4
#define _BAUDCON1_SCKP1_SIZE                                0x1
#define _BAUDCON1_SCKP1_LENGTH                              0x1
#define _BAUDCON1_SCKP1_MASK                                0x10
#define _BAUDCON1_DTRXP1_POSN                               0x5
#define _BAUDCON1_DTRXP1_POSITION                           0x5
#define _BAUDCON1_DTRXP1_SIZE                               0x1
#define _BAUDCON1_DTRXP1_LENGTH                             0x1
#define _BAUDCON1_DTRXP1_MASK                               0x20
#define _BAUDCON1_RCIDL1_POSN                               0x6
#define _BAUDCON1_RCIDL1_POSITION                           0x6
#define _BAUDCON1_RCIDL1_SIZE                               0x1
#define _BAUDCON1_RCIDL1_LENGTH                             0x1
#define _BAUDCON1_RCIDL1_MASK                               0x40
#define _BAUDCON1_ABDOVF1_POSN                              0x7
#define _BAUDCON1_ABDOVF1_POSITION                          0x7
#define _BAUDCON1_ABDOVF1_SIZE                              0x1
#define _BAUDCON1_ABDOVF1_LENGTH                            0x1
#define _BAUDCON1_ABDOVF1_MASK                              0x80
#define _BAUDCON1_TXCKP_POSN                                0x4
#define _BAUDCON1_TXCKP_POSITION                            0x4
#define _BAUDCON1_TXCKP_SIZE                                0x1
#define _BAUDCON1_TXCKP_LENGTH                              0x1
#define _BAUDCON1_TXCKP_MASK                                0x10
#define _BAUDCON1_RXDTP_POSN                                0x5
#define _BAUDCON1_RXDTP_POSITION                            0x5
#define _BAUDCON1_RXDTP_SIZE                                0x1
#define _BAUDCON1_RXDTP_LENGTH                              0x1
#define _BAUDCON1_RXDTP_MASK                                0x20
#define _BAUDCON1_RCMT_POSN                                 0x6
#define _BAUDCON1_RCMT_POSITION                             0x6
#define _BAUDCON1_RCMT_SIZE                                 0x1
#define _BAUDCON1_RCMT_LENGTH                               0x1
#define _BAUDCON1_RCMT_MASK                                 0x40
#define _BAUDCON1_TXCKP1_POSN                               0x4
#define _BAUDCON1_TXCKP1_POSITION                           0x4
#define _BAUDCON1_TXCKP1_SIZE                               0x1
#define _BAUDCON1_TXCKP1_LENGTH                             0x1
#define _BAUDCON1_TXCKP1_MASK                               0x10
#define _BAUDCON1_RXDTP1_POSN                               0x5
#define _BAUDCON1_RXDTP1_POSITION                           0x5
#define _BAUDCON1_RXDTP1_SIZE                               0x1
#define _BAUDCON1_RXDTP1_LENGTH                             0x1
#define _BAUDCON1_RXDTP1_MASK                               0x20
#define _BAUDCON1_RCMT1_POSN                                0x6
#define _BAUDCON1_RCMT1_POSITION                            0x6
#define _BAUDCON1_RCMT1_SIZE                                0x1
#define _BAUDCON1_RCMT1_LENGTH                              0x1
#define _BAUDCON1_RCMT1_MASK                                0x40
#define _BAUDCON1_RXCKP_POSN                                0x5
#define _BAUDCON1_RXCKP_POSITION                            0x5
#define _BAUDCON1_RXCKP_SIZE                                0x1
#define _BAUDCON1_RXCKP_LENGTH                              0x1
#define _BAUDCON1_RXCKP_MASK                                0x20
#define _BAUDCON1_W4E_POSN                                  0x1
#define _BAUDCON1_W4E_POSITION                              0x1
#define _BAUDCON1_W4E_SIZE                                  0x1
#define _BAUDCON1_W4E_LENGTH                                0x1
#define _BAUDCON1_W4E_MASK                                  0x2
// alias bitfield definitions
typedef union {
    struct {
        unsigned ABDEN                  :1;
        unsigned WUE                    :1;
        unsigned                        :1;
        unsigned BRG16                  :1;
        unsigned CKTXP                  :1;
        unsigned DTRXP                  :1;
        unsigned RCIDL                  :1;
        unsigned ABDOVF                 :1;
    };
    struct {
        unsigned                        :4;
        unsigned SCKP                   :1;
    };
    struct {
        unsigned ABDEN1                 :1;
        unsigned WUE1                   :1;
        unsigned                        :1;
        unsigned BRG161                 :1;
        unsigned SCKP1                  :1;
        unsigned DTRXP1                 :1;
        unsigned RCIDL1                 :1;
        unsigned ABDOVF1                :1;
    };
    struct {
        unsigned                        :4;
        unsigned TXCKP                  :1;
        unsigned RXDTP                  :1;
        unsigned RCMT                   :1;
    };
    struct {
        unsigned                        :4;
        unsigned TXCKP1                 :1;
        unsigned RXDTP1                 :1;
        unsigned RCMT1                  :1;
    };
    struct {
        unsigned                        :5;
        unsigned RXCKP                  :1;
    };
    struct {
        unsigned                        :1;
        unsigned W4E                    :1;
    };
} BAUDCONbits_t;
extern volatile BAUDCONbits_t BAUDCONbits @ 0xFB8;
// bitfield macros
#define _BAUDCON_ABDEN_POSN                                 0x0
#define _BAUDCON_ABDEN_POSITION                             0x0
#define _BAUDCON_ABDEN_SIZE                                 0x1
#define _BAUDCON_ABDEN_LENGTH                               0x1
#define _BAUDCON_ABDEN_MASK                                 0x1
#define _BAUDCON_WUE_POSN                                   0x1
#define _BAUDCON_WUE_POSITION                               0x1
#define _BAUDCON_WUE_SIZE                                   0x1
#define _BAUDCON_WUE_LENGTH                                 0x1
#define _BAUDCON_WUE_MASK                                   0x2
#define _BAUDCON_BRG16_POSN                                 0x3
#define _BAUDCON_BRG16_POSITION                             0x3
#define _BAUDCON_BRG16_SIZE                                 0x1
#define _BAUDCON_BRG16_LENGTH                               0x1
#define _BAUDCON_BRG16_MASK                                 0x8
#define _BAUDCON_CKTXP_POSN                                 0x4
#define _BAUDCON_CKTXP_POSITION                             0x4
#define _BAUDCON_CKTXP_SIZE                                 0x1
#define _BAUDCON_CKTXP_LENGTH                               0x1
#define _BAUDCON_CKTXP_MASK                                 0x10
#define _BAUDCON_DTRXP_POSN                                 0x5
#define _BAUDCON_DTRXP_POSITION                             0x5
#define _BAUDCON_DTRXP_SIZE                                 0x1
#define _BAUDCON_DTRXP_LENGTH                               0x1
#define _BAUDCON_DTRXP_MASK                                 0x20
#define _BAUDCON_RCIDL_POSN                                 0x6
#define _BAUDCON_RCIDL_POSITION                             0x6
#define _BAUDCON_RCIDL_SIZE                                 0x1
#define _BAUDCON_RCIDL_LENGTH                               0x1
#define _BAUDCON_RCIDL_MASK                                 0x40
#define _BAUDCON_ABDOVF_POSN                                0x7
#define _BAUDCON_ABDOVF_POSITION                            0x7
#define _BAUDCON_ABDOVF_SIZE                                0x1
#define _BAUDCON_ABDOVF_LENGTH                              0x1
#define _BAUDCON_ABDOVF_MASK                                0x80
#define _BAUDCON_SCKP_POSN                                  0x4
#define _BAUDCON_SCKP_POSITION                              0x4
#define _BAUDCON_SCKP_SIZE                                  0x1
#define _BAUDCON_SCKP_LENGTH                                0x1
#define _BAUDCON_SCKP_MASK                                  0x10
#define _BAUDCON_ABDEN1_POSN                                0x0
#define _BAUDCON_ABDEN1_POSITION                            0x0
#define _BAUDCON_ABDEN1_SIZE                                0x1
#define _BAUDCON_ABDEN1_LENGTH                              0x1
#define _BAUDCON_ABDEN1_MASK                                0x1
#define _BAUDCON_WUE1_POSN                                  0x1
#define _BAUDCON_WUE1_POSITION                              0x1
#define _BAUDCON_WUE1_SIZE                                  0x1
#define _BAUDCON_WUE1_LENGTH                                0x1
#define _BAUDCON_WUE1_MASK                                  0x2
#define _BAUDCON_BRG161_POSN                                0x3
#define _BAUDCON_BRG161_POSITION                            0x3
#define _BAUDCON_BRG161_SIZE                                0x1
#define _BAUDCON_BRG161_LENGTH                              0x1
#define _BAUDCON_BRG161_MASK                                0x8
#define _BAUDCON_SCKP1_POSN                                 0x4
#define _BAUDCON_SCKP1_POSITION                             0x4
#define _BAUDCON_SCKP1_SIZE                                 0x1
#define _BAUDCON_SCKP1_LENGTH                               0x1
#define _BAUDCON_SCKP1_MASK                                 0x10
#define _BAUDCON_DTRXP1_POSN                                0x5
#define _BAUDCON_DTRXP1_POSITION                            0x5
#define _BAUDCON_DTRXP1_SIZE                                0x1
#define _BAUDCON_DTRXP1_LENGTH                              0x1
#define _BAUDCON_DTRXP1_MASK                                0x20
#define _BAUDCON_RCIDL1_POSN                                0x6
#define _BAUDCON_RCIDL1_POSITION                            0x6
#define _BAUDCON_RCIDL1_SIZE                                0x1
#define _BAUDCON_RCIDL1_LENGTH                              0x1
#define _BAUDCON_RCIDL1_MASK                                0x40
#define _BAUDCON_ABDOVF1_POSN                               0x7
#define _BAUDCON_ABDOVF1_POSITION                           0x7
#define _BAUDCON_ABDOVF1_SIZE                               0x1
#define _BAUDCON_ABDOVF1_LENGTH                             0x1
#define _BAUDCON_ABDOVF1_MASK                               0x80
#define _BAUDCON_TXCKP_POSN                                 0x4
#define _BAUDCON_TXCKP_POSITION                             0x4
#define _BAUDCON_TXCKP_SIZE                                 0x1
#define _BAUDCON_TXCKP_LENGTH                               0x1
#define _BAUDCON_TXCKP_MASK                                 0x10
#define _BAUDCON_RXDTP_POSN                                 0x5
#define _BAUDCON_RXDTP_POSITION                             0x5
#define _BAUDCON_RXDTP_SIZE                                 0x1
#define _BAUDCON_RXDTP_LENGTH                               0x1
#define _BAUDCON_RXDTP_MASK                                 0x20
#define _BAUDCON_RCMT_POSN                                  0x6
#define _BAUDCON_RCMT_POSITION                              0x6
#define _BAUDCON_RCMT_SIZE                                  0x1
#define _BAUDCON_RCMT_LENGTH                                0x1
#define _BAUDCON_RCMT_MASK                                  0x40
#define _BAUDCON_TXCKP1_POSN                                0x4
#define _BAUDCON_TXCKP1_POSITION                            0x4
#define _BAUDCON_TXCKP1_SIZE                                0x1
#define _BAUDCON_TXCKP1_LENGTH                              0x1
#define _BAUDCON_TXCKP1_MASK                                0x10
#define _BAUDCON_RXDTP1_POSN                                0x5
#define _BAUDCON_RXDTP1_POSITION                            0x5
#define _BAUDCON_RXDTP1_SIZE                                0x1
#define _BAUDCON_RXDTP1_LENGTH                              0x1
#define _BAUDCON_RXDTP1_MASK                                0x20
#define _BAUDCON_RCMT1_POSN                                 0x6
#define _BAUDCON_RCMT1_POSITION                             0x6
#define _BAUDCON_RCMT1_SIZE                                 0x1
#define _BAUDCON_RCMT1_LENGTH                               0x1
#define _BAUDCON_RCMT1_MASK                                 0x40
#define _BAUDCON_RXCKP_POSN                                 0x5
#define _BAUDCON_RXCKP_POSITION                             0x5
#define _BAUDCON_RXCKP_SIZE                                 0x1
#define _BAUDCON_RXCKP_LENGTH                               0x1
#define _BAUDCON_RXCKP_MASK                                 0x20
#define _BAUDCON_W4E_POSN                                   0x1
#define _BAUDCON_W4E_POSITION                               0x1
#define _BAUDCON_W4E_SIZE                                   0x1
#define _BAUDCON_W4E_LENGTH                                 0x1
#define _BAUDCON_W4E_MASK                                   0x2
typedef union {
    struct {
        unsigned ABDEN                  :1;
        unsigned WUE                    :1;
        unsigned                        :1;
        unsigned BRG16                  :1;
        unsigned CKTXP                  :1;
        unsigned DTRXP                  :1;
        unsigned RCIDL                  :1;
        unsigned ABDOVF                 :1;
    };
    struct {
        unsigned                        :4;
        unsigned SCKP                   :1;
    };
    struct {
        unsigned ABDEN1                 :1;
        unsigned WUE1                   :1;
        unsigned                        :1;
        unsigned BRG161                 :1;
        unsigned SCKP1                  :1;
        unsigned DTRXP1                 :1;
        unsigned RCIDL1                 :1;
        unsigned ABDOVF1                :1;
    };
    struct {
        unsigned                        :4;
        unsigned TXCKP                  :1;
        unsigned RXDTP                  :1;
        unsigned RCMT                   :1;
    };
    struct {
        unsigned                        :4;
        unsigned TXCKP1                 :1;
        unsigned RXDTP1                 :1;
        unsigned RCMT1                  :1;
    };
    struct {
        unsigned                        :5;
        unsigned RXCKP                  :1;
    };
    struct {
        unsigned                        :1;
        unsigned W4E                    :1;
    };
} BAUDCTLbits_t;
extern volatile BAUDCTLbits_t BAUDCTLbits @ 0xFB8;
// bitfield macros
#define _BAUDCTL_ABDEN_POSN                                 0x0
#define _BAUDCTL_ABDEN_POSITION                             0x0
#define _BAUDCTL_ABDEN_SIZE                                 0x1
#define _BAUDCTL_ABDEN_LENGTH                               0x1
#define _BAUDCTL_ABDEN_MASK                                 0x1
#define _BAUDCTL_WUE_POSN                                   0x1
#define _BAUDCTL_WUE_POSITION                               0x1
#define _BAUDCTL_WUE_SIZE                                   0x1
#define _BAUDCTL_WUE_LENGTH                                 0x1
#define _BAUDCTL_WUE_MASK                                   0x2
#define _BAUDCTL_BRG16_POSN                                 0x3
#define _BAUDCTL_BRG16_POSITION                             0x3
#define _BAUDCTL_BRG16_SIZE                                 0x1
#define _BAUDCTL_BRG16_LENGTH                               0x1
#define _BAUDCTL_BRG16_MASK                                 0x8
#define _BAUDCTL_CKTXP_POSN                                 0x4
#define _BAUDCTL_CKTXP_POSITION                             0x4
#define _BAUDCTL_CKTXP_SIZE                                 0x1
#define _BAUDCTL_CKTXP_LENGTH                               0x1
#define _BAUDCTL_CKTXP_MASK                                 0x10
#define _BAUDCTL_DTRXP_POSN                                 0x5
#define _BAUDCTL_DTRXP_POSITION                             0x5
#define _BAUDCTL_DTRXP_SIZE                                 0x1
#define _BAUDCTL_DTRXP_LENGTH                               0x1
#define _BAUDCTL_DTRXP_MASK                                 0x20
#define _BAUDCTL_RCIDL_POSN                                 0x6
#define _BAUDCTL_RCIDL_POSITION                             0x6
#define _BAUDCTL_RCIDL_SIZE                                 0x1
#define _BAUDCTL_RCIDL_LENGTH                               0x1
#define _BAUDCTL_RCIDL_MASK                                 0x40
#define _BAUDCTL_ABDOVF_POSN                                0x7
#define _BAUDCTL_ABDOVF_POSITION                            0x7
#define _BAUDCTL_ABDOVF_SIZE                                0x1
#define _BAUDCTL_ABDOVF_LENGTH                              0x1
#define _BAUDCTL_ABDOVF_MASK                                0x80
#define _BAUDCTL_SCKP_POSN                                  0x4
#define _BAUDCTL_SCKP_POSITION                              0x4
#define _BAUDCTL_SCKP_SIZE                                  0x1
#define _BAUDCTL_SCKP_LENGTH                                0x1
#define _BAUDCTL_SCKP_MASK                                  0x10
#define _BAUDCTL_ABDEN1_POSN                                0x0
#define _BAUDCTL_ABDEN1_POSITION                            0x0
#define _BAUDCTL_ABDEN1_SIZE                                0x1
#define _BAUDCTL_ABDEN1_LENGTH                              0x1
#define _BAUDCTL_ABDEN1_MASK                                0x1
#define _BAUDCTL_WUE1_POSN                                  0x1
#define _BAUDCTL_WUE1_POSITION                              0x1
#define _BAUDCTL_WUE1_SIZE                                  0x1
#define _BAUDCTL_WUE1_LENGTH                                0x1
#define _BAUDCTL_WUE1_MASK                                  0x2
#define _BAUDCTL_BRG161_POSN                                0x3
#define _BAUDCTL_BRG161_POSITION                            0x3
#define _BAUDCTL_BRG161_SIZE                                0x1
#define _BAUDCTL_BRG161_LENGTH                              0x1
#define _BAUDCTL_BRG161_MASK                                0x8
#define _BAUDCTL_SCKP1_POSN                                 0x4
#define _BAUDCTL_SCKP1_POSITION                             0x4
#define _BAUDCTL_SCKP1_SIZE                                 0x1
#define _BAUDCTL_SCKP1_LENGTH                               0x1
#define _BAUDCTL_SCKP1_MASK                                 0x10
#define _BAUDCTL_DTRXP1_POSN                                0x5
#define _BAUDCTL_DTRXP1_POSITION                            0x5
#define _BAUDCTL_DTRXP1_SIZE                                0x1
#define _BAUDCTL_DTRXP1_LENGTH                              0x1
#define _BAUDCTL_DTRXP1_MASK                                0x20
#define _BAUDCTL_RCIDL1_POSN                                0x6
#define _BAUDCTL_RCIDL1_POSITION                            0x6
#define _BAUDCTL_RCIDL1_SIZE                                0x1
#define _BAUDCTL_RCIDL1_LENGTH                              0x1
#define _BAUDCTL_RCIDL1_MASK                                0x40
#define _BAUDCTL_ABDOVF1_POSN                               0x7
#define _BAUDCTL_ABDOVF1_POSITION                           0x7
#define _BAUDCTL_ABDOVF1_SIZE                               0x1
#define _BAUDCTL_ABDOVF1_LENGTH                             0x1
#define _BAUDCTL_ABDOVF1_MASK                               0x80
#define _BAUDCTL_TXCKP_POSN                                 0x4
#define _BAUDCTL_TXCKP_POSITION                             0x4
#define _BAUDCTL_TXCKP_SIZE                                 0x1
#define _BAUDCTL_TXCKP_LENGTH                               0x1
#define _BAUDCTL_TXCKP_MASK                                 0x10
#define _BAUDCTL_RXDTP_POSN                                 0x5
#define _BAUDCTL_RXDTP_POSITION                             0x5
#define _BAUDCTL_RXDTP_SIZE                                 0x1
#define _BAUDCTL_RXDTP_LENGTH                               0x1
#define _BAUDCTL_RXDTP_MASK                                 0x20
#define _BAUDCTL_RCMT_POSN                                  0x6
#define _BAUDCTL_RCMT_POSITION                              0x6
#define _BAUDCTL_RCMT_SIZE                                  0x1
#define _BAUDCTL_RCMT_LENGTH                                0x1
#define _BAUDCTL_RCMT_MASK                                  0x40
#define _BAUDCTL_TXCKP1_POSN                                0x4
#define _BAUDCTL_TXCKP1_POSITION                            0x4
#define _BAUDCTL_TXCKP1_SIZE                                0x1
#define _BAUDCTL_TXCKP1_LENGTH                              0x1
#define _BAUDCTL_TXCKP1_MASK                                0x10
#define _BAUDCTL_RXDTP1_POSN                                0x5
#define _BAUDCTL_RXDTP1_POSITION                            0x5
#define _BAUDCTL_RXDTP1_SIZE                                0x1
#define _BAUDCTL_RXDTP1_LENGTH                              0x1
#define _BAUDCTL_RXDTP1_MASK                                0x20
#define _BAUDCTL_RCMT1_POSN                                 0x6
#define _BAUDCTL_RCMT1_POSITION                             0x6
#define _BAUDCTL_RCMT1_SIZE                                 0x1
#define _BAUDCTL_RCMT1_LENGTH                               0x1
#define _BAUDCTL_RCMT1_MASK                                 0x40
#define _BAUDCTL_RXCKP_POSN                                 0x5
#define _BAUDCTL_RXCKP_POSITION                             0x5
#define _BAUDCTL_RXCKP_SIZE                                 0x1
#define _BAUDCTL_RXCKP_LENGTH                               0x1
#define _BAUDCTL_RXCKP_MASK                                 0x20
#define _BAUDCTL_W4E_POSN                                   0x1
#define _BAUDCTL_W4E_POSITION                               0x1
#define _BAUDCTL_W4E_SIZE                                   0x1
#define _BAUDCTL_W4E_LENGTH                                 0x1
#define _BAUDCTL_W4E_MASK                                   0x2
typedef union {
    struct {
        unsigned ABDEN                  :1;
        unsigned WUE                    :1;
        unsigned                        :1;
        unsigned BRG16                  :1;
        unsigned CKTXP                  :1;
        unsigned DTRXP                  :1;
        unsigned RCIDL                  :1;
        unsigned ABDOVF                 :1;
    };
    struct {
        unsigned                        :4;
        unsigned SCKP                   :1;
    };
    struct {
        unsigned ABDEN1                 :1;
        unsigned WUE1                   :1;
        unsigned                        :1;
        unsigned BRG161                 :1;
        unsigned SCKP1                  :1;
        unsigned DTRXP1                 :1;
        unsigned RCIDL1                 :1;
        unsigned ABDOVF1                :1;
    };
    struct {
        unsigned                        :4;
        unsigned TXCKP                  :1;
        unsigned RXDTP                  :1;
        unsigned RCMT                   :1;
    };
    struct {
        unsigned                        :4;
        unsigned TXCKP1                 :1;
        unsigned RXDTP1                 :1;
        unsigned RCMT1                  :1;
    };
    struct {
        unsigned                        :5;
        unsigned RXCKP                  :1;
    };
    struct {
        unsigned                        :1;
        unsigned W4E                    :1;
    };
} BAUD1CONbits_t;
extern volatile BAUD1CONbits_t BAUD1CONbits @ 0xFB8;
// bitfield macros
#define _BAUD1CON_ABDEN_POSN                                0x0
#define _BAUD1CON_ABDEN_POSITION                            0x0
#define _BAUD1CON_ABDEN_SIZE                                0x1
#define _BAUD1CON_ABDEN_LENGTH                              0x1
#define _BAUD1CON_ABDEN_MASK                                0x1
#define _BAUD1CON_WUE_POSN                                  0x1
#define _BAUD1CON_WUE_POSITION                              0x1
#define _BAUD1CON_WUE_SIZE                                  0x1
#define _BAUD1CON_WUE_LENGTH                                0x1
#define _BAUD1CON_WUE_MASK                                  0x2
#define _BAUD1CON_BRG16_POSN                                0x3
#define _BAUD1CON_BRG16_POSITION                            0x3
#define _BAUD1CON_BRG16_SIZE                                0x1
#define _BAUD1CON_BRG16_LENGTH                              0x1
#define _BAUD1CON_BRG16_MASK                                0x8
#define _BAUD1CON_CKTXP_POSN                                0x4
#define _BAUD1CON_CKTXP_POSITION                            0x4
#define _BAUD1CON_CKTXP_SIZE                                0x1
#define _BAUD1CON_CKTXP_LENGTH                              0x1
#define _BAUD1CON_CKTXP_MASK                                0x10
#define _BAUD1CON_DTRXP_POSN                                0x5
#define _BAUD1CON_DTRXP_POSITION                            0x5
#define _BAUD1CON_DTRXP_SIZE                                0x1
#define _BAUD1CON_DTRXP_LENGTH                              0x1
#define _BAUD1CON_DTRXP_MASK                                0x20
#define _BAUD1CON_RCIDL_POSN                                0x6
#define _BAUD1CON_RCIDL_POSITION                            0x6
#define _BAUD1CON_RCIDL_SIZE                                0x1
#define _BAUD1CON_RCIDL_LENGTH                              0x1
#define _BAUD1CON_RCIDL_MASK                                0x40
#define _BAUD1CON_ABDOVF_POSN                               0x7
#define _BAUD1CON_ABDOVF_POSITION                           0x7
#define _BAUD1CON_ABDOVF_SIZE                               0x1
#define _BAUD1CON_ABDOVF_LENGTH                             0x1
#define _BAUD1CON_ABDOVF_MASK                               0x80
#define _BAUD1CON_SCKP_POSN                                 0x4
#define _BAUD1CON_SCKP_POSITION                             0x4
#define _BAUD1CON_SCKP_SIZE                                 0x1
#define _BAUD1CON_SCKP_LENGTH                               0x1
#define _BAUD1CON_SCKP_MASK                                 0x10
#define _BAUD1CON_ABDEN1_POSN                               0x0
#define _BAUD1CON_ABDEN1_POSITION                           0x0
#define _BAUD1CON_ABDEN1_SIZE                               0x1
#define _BAUD1CON_ABDEN1_LENGTH                             0x1
#define _BAUD1CON_ABDEN1_MASK                               0x1
#define _BAUD1CON_WUE1_POSN                                 0x1
#define _BAUD1CON_WUE1_POSITION                             0x1
#define _BAUD1CON_WUE1_SIZE                                 0x1
#define _BAUD1CON_WUE1_LENGTH                               0x1
#define _BAUD1CON_WUE1_MASK                                 0x2
#define _BAUD1CON_BRG161_POSN                               0x3
#define _BAUD1CON_BRG161_POSITION                           0x3
#define _BAUD1CON_BRG161_SIZE                               0x1
#define _BAUD1CON_BRG161_LENGTH                             0x1
#define _BAUD1CON_BRG161_MASK                               0x8
#define _BAUD1CON_SCKP1_POSN                                0x4
#define _BAUD1CON_SCKP1_POSITION                            0x4
#define _BAUD1CON_SCKP1_SIZE                                0x1
#define _BAUD1CON_SCKP1_LENGTH                              0x1
#define _BAUD1CON_SCKP1_MASK                                0x10
#define _BAUD1CON_DTRXP1_POSN                               0x5
#define _BAUD1CON_DTRXP1_POSITION                           0x5
#define _BAUD1CON_DTRXP1_SIZE                               0x1
#define _BAUD1CON_DTRXP1_LENGTH                             0x1
#define _BAUD1CON_DTRXP1_MASK                               0x20
#define _BAUD1CON_RCIDL1_POSN                               0x6
#define _BAUD1CON_RCIDL1_POSITION                           0x6
#define _BAUD1CON_RCIDL1_SIZE                               0x1
#define _BAUD1CON_RCIDL1_LENGTH                             0x1
#define _BAUD1CON_RCIDL1_MASK                               0x40
#define _BAUD1CON_ABDOVF1_POSN                              0x7
#define _BAUD1CON_ABDOVF1_POSITION                          0x7
#define _BAUD1CON_ABDOVF1_SIZE                              0x1
#define _BAUD1CON_ABDOVF1_LENGTH                            0x1
#define _BAUD1CON_ABDOVF1_MASK                              0x80
#define _BAUD1CON_TXCKP_POSN                                0x4
#define _BAUD1CON_TXCKP_POSITION                            0x4
#define _BAUD1CON_TXCKP_SIZE                                0x1
#define _BAUD1CON_TXCKP_LENGTH                              0x1
#define _BAUD1CON_TXCKP_MASK                                0x10
#define _BAUD1CON_RXDTP_POSN                                0x5
#define _BAUD1CON_RXDTP_POSITION                            0x5
#define _BAUD1CON_RXDTP_SIZE                                0x1
#define _BAUD1CON_RXDTP_LENGTH                              0x1
#define _BAUD1CON_RXDTP_MASK                                0x20
#define _BAUD1CON_RCMT_POSN                                 0x6
#define _BAUD1CON_RCMT_POSITION                             0x6
#define _BAUD1CON_RCMT_SIZE                                 0x1
#define _BAUD1CON_RCMT_LENGTH                               0x1
#define _BAUD1CON_RCMT_MASK                                 0x40
#define _BAUD1CON_TXCKP1_POSN                               0x4
#define _BAUD1CON_TXCKP1_POSITION                           0x4
#define _BAUD1CON_TXCKP1_SIZE                               0x1
#define _BAUD1CON_TXCKP1_LENGTH                             0x1
#define _BAUD1CON_TXCKP1_MASK                               0x10
#define _BAUD1CON_RXDTP1_POSN                               0x5
#define _BAUD1CON_RXDTP1_POSITION                           0x5
#define _BAUD1CON_RXDTP1_SIZE                               0x1
#define _BAUD1CON_RXDTP1_LENGTH                             0x1
#define _BAUD1CON_RXDTP1_MASK                               0x20
#define _BAUD1CON_RCMT1_POSN                                0x6
#define _BAUD1CON_RCMT1_POSITION                            0x6
#define _BAUD1CON_RCMT1_SIZE                                0x1
#define _BAUD1CON_RCMT1_LENGTH                              0x1
#define _BAUD1CON_RCMT1_MASK                                0x40
#define _BAUD1CON_RXCKP_POSN                                0x5
#define _BAUD1CON_RXCKP_POSITION                            0x5
#define _BAUD1CON_RXCKP_SIZE                                0x1
#define _BAUD1CON_RXCKP_LENGTH                              0x1
#define _BAUD1CON_RXCKP_MASK                                0x20
#define _BAUD1CON_W4E_POSN                                  0x1
#define _BAUD1CON_W4E_POSITION                              0x1
#define _BAUD1CON_W4E_SIZE                                  0x1
#define _BAUD1CON_W4E_LENGTH                                0x1
#define _BAUD1CON_W4E_MASK                                  0x2

// Register: PSTR1CON
extern volatile unsigned char           PSTR1CON            @ 0xFB9;
#ifndef _LIB_BUILD
asm("PSTR1CON equ 0FB9h");
#endif
// aliases
extern volatile unsigned char           PSTRCON             @ 0xFB9;
#ifndef _LIB_BUILD
asm("PSTRCON equ 0FB9h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned STR1A                  :1;
        unsigned STR1B                  :1;
        unsigned STR1C                  :1;
        unsigned STR1D                  :1;
        unsigned STR1SYNC               :1;
    };
    struct {
        unsigned STRA                   :1;
        unsigned STRB                   :1;
        unsigned STRC                   :1;
        unsigned STRD                   :1;
        unsigned STRSYNC                :1;
    };
} PSTR1CONbits_t;
extern volatile PSTR1CONbits_t PSTR1CONbits @ 0xFB9;
// bitfield macros
#define _PSTR1CON_STR1A_POSN                                0x0
#define _PSTR1CON_STR1A_POSITION                            0x0
#define _PSTR1CON_STR1A_SIZE                                0x1
#define _PSTR1CON_STR1A_LENGTH                              0x1
#define _PSTR1CON_STR1A_MASK                                0x1
#define _PSTR1CON_STR1B_POSN                                0x1
#define _PSTR1CON_STR1B_POSITION                            0x1
#define _PSTR1CON_STR1B_SIZE                                0x1
#define _PSTR1CON_STR1B_LENGTH                              0x1
#define _PSTR1CON_STR1B_MASK                                0x2
#define _PSTR1CON_STR1C_POSN                                0x2
#define _PSTR1CON_STR1C_POSITION                            0x2
#define _PSTR1CON_STR1C_SIZE                                0x1
#define _PSTR1CON_STR1C_LENGTH                              0x1
#define _PSTR1CON_STR1C_MASK                                0x4
#define _PSTR1CON_STR1D_POSN                                0x3
#define _PSTR1CON_STR1D_POSITION                            0x3
#define _PSTR1CON_STR1D_SIZE                                0x1
#define _PSTR1CON_STR1D_LENGTH                              0x1
#define _PSTR1CON_STR1D_MASK                                0x8
#define _PSTR1CON_STR1SYNC_POSN                             0x4
#define _PSTR1CON_STR1SYNC_POSITION                         0x4
#define _PSTR1CON_STR1SYNC_SIZE                             0x1
#define _PSTR1CON_STR1SYNC_LENGTH                           0x1
#define _PSTR1CON_STR1SYNC_MASK                             0x10
#define _PSTR1CON_STRA_POSN                                 0x0
#define _PSTR1CON_STRA_POSITION                             0x0
#define _PSTR1CON_STRA_SIZE                                 0x1
#define _PSTR1CON_STRA_LENGTH                               0x1
#define _PSTR1CON_STRA_MASK                                 0x1
#define _PSTR1CON_STRB_POSN                                 0x1
#define _PSTR1CON_STRB_POSITION                             0x1
#define _PSTR1CON_STRB_SIZE                                 0x1
#define _PSTR1CON_STRB_LENGTH                               0x1
#define _PSTR1CON_STRB_MASK                                 0x2
#define _PSTR1CON_STRC_POSN                                 0x2
#define _PSTR1CON_STRC_POSITION                             0x2
#define _PSTR1CON_STRC_SIZE                                 0x1
#define _PSTR1CON_STRC_LENGTH                               0x1
#define _PSTR1CON_STRC_MASK                                 0x4
#define _PSTR1CON_STRD_POSN                                 0x3
#define _PSTR1CON_STRD_POSITION                             0x3
#define _PSTR1CON_STRD_SIZE                                 0x1
#define _PSTR1CON_STRD_LENGTH                               0x1
#define _PSTR1CON_STRD_MASK                                 0x8
#define _PSTR1CON_STRSYNC_POSN                              0x4
#define _PSTR1CON_STRSYNC_POSITION                          0x4
#define _PSTR1CON_STRSYNC_SIZE                              0x1
#define _PSTR1CON_STRSYNC_LENGTH                            0x1
#define _PSTR1CON_STRSYNC_MASK                              0x10
// alias bitfield definitions
typedef union {
    struct {
        unsigned STR1A                  :1;
        unsigned STR1B                  :1;
        unsigned STR1C                  :1;
        unsigned STR1D                  :1;
        unsigned STR1SYNC               :1;
    };
    struct {
        unsigned STRA                   :1;
        unsigned STRB                   :1;
        unsigned STRC                   :1;
        unsigned STRD                   :1;
        unsigned STRSYNC                :1;
    };
} PSTRCONbits_t;
extern volatile PSTRCONbits_t PSTRCONbits @ 0xFB9;
// bitfield macros
#define _PSTRCON_STR1A_POSN                                 0x0
#define _PSTRCON_STR1A_POSITION                             0x0
#define _PSTRCON_STR1A_SIZE                                 0x1
#define _PSTRCON_STR1A_LENGTH                               0x1
#define _PSTRCON_STR1A_MASK                                 0x1
#define _PSTRCON_STR1B_POSN                                 0x1
#define _PSTRCON_STR1B_POSITION                             0x1
#define _PSTRCON_STR1B_SIZE                                 0x1
#define _PSTRCON_STR1B_LENGTH                               0x1
#define _PSTRCON_STR1B_MASK                                 0x2
#define _PSTRCON_STR1C_POSN                                 0x2
#define _PSTRCON_STR1C_POSITION                             0x2
#define _PSTRCON_STR1C_SIZE                                 0x1
#define _PSTRCON_STR1C_LENGTH                               0x1
#define _PSTRCON_STR1C_MASK                                 0x4
#define _PSTRCON_STR1D_POSN                                 0x3
#define _PSTRCON_STR1D_POSITION                             0x3
#define _PSTRCON_STR1D_SIZE                                 0x1
#define _PSTRCON_STR1D_LENGTH                               0x1
#define _PSTRCON_STR1D_MASK                                 0x8
#define _PSTRCON_STR1SYNC_POSN                              0x4
#define _PSTRCON_STR1SYNC_POSITION                          0x4
#define _PSTRCON_STR1SYNC_SIZE                              0x1
#define _PSTRCON_STR1SYNC_LENGTH                            0x1
#define _PSTRCON_STR1SYNC_MASK                              0x10
#define _PSTRCON_STRA_POSN                                  0x0
#define _PSTRCON_STRA_POSITION                              0x0
#define _PSTRCON_STRA_SIZE                                  0x1
#define _PSTRCON_STRA_LENGTH                                0x1
#define _PSTRCON_STRA_MASK                                  0x1
#define _PSTRCON_STRB_POSN                                  0x1
#define _PSTRCON_STRB_POSITION                              0x1
#define _PSTRCON_STRB_SIZE                                  0x1
#define _PSTRCON_STRB_LENGTH                                0x1
#define _PSTRCON_STRB_MASK                                  0x2
#define _PSTRCON_STRC_POSN                                  0x2
#define _PSTRCON_STRC_POSITION                              0x2
#define _PSTRCON_STRC_SIZE                                  0x1
#define _PSTRCON_STRC_LENGTH                                0x1
#define _PSTRCON_STRC_MASK                                  0x4
#define _PSTRCON_STRD_POSN                                  0x3
#define _PSTRCON_STRD_POSITION                              0x3
#define _PSTRCON_STRD_SIZE                                  0x1
#define _PSTRCON_STRD_LENGTH                                0x1
#define _PSTRCON_STRD_MASK                                  0x8
#define _PSTRCON_STRSYNC_POSN                               0x4
#define _PSTRCON_STRSYNC_POSITION                           0x4
#define _PSTRCON_STRSYNC_SIZE                               0x1
#define _PSTRCON_STRSYNC_LENGTH                             0x1
#define _PSTRCON_STRSYNC_MASK                               0x10

// Register: T2CON
extern volatile unsigned char           T2CON               @ 0xFBA;
#ifndef _LIB_BUILD
asm("T2CON equ 0FBAh");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned T2CKPS                 :2;
        unsigned TMR2ON                 :1;
        unsigned T2OUTPS                :4;
    };
    struct {
        unsigned T2CKPS0                :1;
        unsigned T2CKPS1                :1;
        unsigned                        :1;
        unsigned T2OUTPS0               :1;
        unsigned T2OUTPS1               :1;
        unsigned T2OUTPS2               :1;
        unsigned T2OUTPS3               :1;
    };
} T2CONbits_t;
extern volatile T2CONbits_t T2CONbits @ 0xFBA;
// bitfield macros
#define _T2CON_T2CKPS_POSN                                  0x0
#define _T2CON_T2CKPS_POSITION                              0x0
#define _T2CON_T2CKPS_SIZE                                  0x2
#define _T2CON_T2CKPS_LENGTH                                0x2
#define _T2CON_T2CKPS_MASK                                  0x3
#define _T2CON_TMR2ON_POSN                                  0x2
#define _T2CON_TMR2ON_POSITION                              0x2
#define _T2CON_TMR2ON_SIZE                                  0x1
#define _T2CON_TMR2ON_LENGTH                                0x1
#define _T2CON_TMR2ON_MASK                                  0x4
#define _T2CON_T2OUTPS_POSN                                 0x3
#define _T2CON_T2OUTPS_POSITION                             0x3
#define _T2CON_T2OUTPS_SIZE                                 0x4
#define _T2CON_T2OUTPS_LENGTH                               0x4
#define _T2CON_T2OUTPS_MASK                                 0x78
#define _T2CON_T2CKPS0_POSN                                 0x0
#define _T2CON_T2CKPS0_POSITION                             0x0
#define _T2CON_T2CKPS0_SIZE                                 0x1
#define _T2CON_T2CKPS0_LENGTH                               0x1
#define _T2CON_T2CKPS0_MASK                                 0x1
#define _T2CON_T2CKPS1_POSN                                 0x1
#define _T2CON_T2CKPS1_POSITION                             0x1
#define _T2CON_T2CKPS1_SIZE                                 0x1
#define _T2CON_T2CKPS1_LENGTH                               0x1
#define _T2CON_T2CKPS1_MASK                                 0x2
#define _T2CON_T2OUTPS0_POSN                                0x3
#define _T2CON_T2OUTPS0_POSITION                            0x3
#define _T2CON_T2OUTPS0_SIZE                                0x1
#define _T2CON_T2OUTPS0_LENGTH                              0x1
#define _T2CON_T2OUTPS0_MASK                                0x8
#define _T2CON_T2OUTPS1_POSN                                0x4
#define _T2CON_T2OUTPS1_POSITION                            0x4
#define _T2CON_T2OUTPS1_SIZE                                0x1
#define _T2CON_T2OUTPS1_LENGTH                              0x1
#define _T2CON_T2OUTPS1_MASK                                0x10
#define _T2CON_T2OUTPS2_POSN                                0x5
#define _T2CON_T2OUTPS2_POSITION                            0x5
#define _T2CON_T2OUTPS2_SIZE                                0x1
#define _T2CON_T2OUTPS2_LENGTH                              0x1
#define _T2CON_T2OUTPS2_MASK                                0x20
#define _T2CON_T2OUTPS3_POSN                                0x6
#define _T2CON_T2OUTPS3_POSITION                            0x6
#define _T2CON_T2OUTPS3_SIZE                                0x1
#define _T2CON_T2OUTPS3_LENGTH                              0x1
#define _T2CON_T2OUTPS3_MASK                                0x40

// Register: PR2
extern volatile unsigned char           PR2                 @ 0xFBB;
#ifndef _LIB_BUILD
asm("PR2 equ 0FBBh");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned PR2                    :8;
    };
} PR2bits_t;
extern volatile PR2bits_t PR2bits @ 0xFBB;
// bitfield macros
#define _PR2_PR2_POSN                                       0x0
#define _PR2_PR2_POSITION                                   0x0
#define _PR2_PR2_SIZE                                       0x8
#define _PR2_PR2_LENGTH                                     0x8
#define _PR2_PR2_MASK                                       0xFF

// Register: TMR2
extern volatile unsigned char           TMR2                @ 0xFBC;
#ifndef _LIB_BUILD
asm("TMR2 equ 0FBCh");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned TMR2                   :8;
    };
} TMR2bits_t;
extern volatile TMR2bits_t TMR2bits @ 0xFBC;
// bitfield macros
#define _TMR2_TMR2_POSN                                     0x0
#define _TMR2_TMR2_POSITION                                 0x0
#define _TMR2_TMR2_SIZE                                     0x8
#define _TMR2_TMR2_LENGTH                                   0x8
#define _TMR2_TMR2_MASK                                     0xFF

// Register: CCP1CON
extern volatile unsigned char           CCP1CON             @ 0xFBD;
#ifndef _LIB_BUILD
asm("CCP1CON equ 0FBDh");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned CCP1M                  :4;
        unsigned DC1B                   :2;
        unsigned P1M                    :2;
    };
    struct {
        unsigned CCP1M0                 :1;
        unsigned CCP1M1                 :1;
        unsigned CCP1M2                 :1;
        unsigned CCP1M3                 :1;
        unsigned DC1B0                  :1;
        unsigned DC1B1                  :1;
        unsigned P1M0                   :1;
        unsigned P1M1                   :1;
    };
} CCP1CONbits_t;
extern volatile CCP1CONbits_t CCP1CONbits @ 0xFBD;
// bitfield macros
#define _CCP1CON_CCP1M_POSN                                 0x0
#define _CCP1CON_CCP1M_POSITION                             0x0
#define _CCP1CON_CCP1M_SIZE                                 0x4
#define _CCP1CON_CCP1M_LENGTH                               0x4
#define _CCP1CON_CCP1M_MASK                                 0xF
#define _CCP1CON_DC1B_POSN                                  0x4
#define _CCP1CON_DC1B_POSITION                              0x4
#define _CCP1CON_DC1B_SIZE                                  0x2
#define _CCP1CON_DC1B_LENGTH                                0x2
#define _CCP1CON_DC1B_MASK                                  0x30
#define _CCP1CON_P1M_POSN                                   0x6
#define _CCP1CON_P1M_POSITION                               0x6
#define _CCP1CON_P1M_SIZE                                   0x2
#define _CCP1CON_P1M_LENGTH                                 0x2
#define _CCP1CON_P1M_MASK                                   0xC0
#define _CCP1CON_CCP1M0_POSN                                0x0
#define _CCP1CON_CCP1M0_POSITION                            0x0
#define _CCP1CON_CCP1M0_SIZE                                0x1
#define _CCP1CON_CCP1M0_LENGTH                              0x1
#define _CCP1CON_CCP1M0_MASK                                0x1
#define _CCP1CON_CCP1M1_POSN                                0x1
#define _CCP1CON_CCP1M1_POSITION                            0x1
#define _CCP1CON_CCP1M1_SIZE                                0x1
#define _CCP1CON_CCP1M1_LENGTH                              0x1
#define _CCP1CON_CCP1M1_MASK                                0x2
#define _CCP1CON_CCP1M2_POSN                                0x2
#define _CCP1CON_CCP1M2_POSITION                            0x2
#define _CCP1CON_CCP1M2_SIZE                                0x1
#define _CCP1CON_CCP1M2_LENGTH                              0x1
#define _CCP1CON_CCP1M2_MASK                                0x4
#define _CCP1CON_CCP1M3_POSN                                0x3
#define _CCP1CON_CCP1M3_POSITION                            0x3
#define _CCP1CON_CCP1M3_SIZE                                0x1
#define _CCP1CON_CCP1M3_LENGTH                              0x1
#define _CCP1CON_CCP1M3_MASK                                0x8
#define _CCP1CON_DC1B0_POSN                                 0x4
#define _CCP1CON_DC1B0_POSITION                             0x4
#define _CCP1CON_DC1B0_SIZE                                 0x1
#define _CCP1CON_DC1B0_LENGTH                               0x1
#define _CCP1CON_DC1B0_MASK                                 0x10
#define _CCP1CON_DC1B1_POSN                                 0x5
#define _CCP1CON_DC1B1_POSITION                             0x5
#define _CCP1CON_DC1B1_SIZE                                 0x1
#define _CCP1CON_DC1B1_LENGTH                               0x1
#define _CCP1CON_DC1B1_MASK                                 0x20
#define _CCP1CON_P1M0_POSN                                  0x6
#define _CCP1CON_P1M0_POSITION                              0x6
#define _CCP1CON_P1M0_SIZE                                  0x1
#define _CCP1CON_P1M0_LENGTH                                0x1
#define _CCP1CON_P1M0_MASK                                  0x40
#define _CCP1CON_P1M1_POSN                                  0x7
#define _CCP1CON_P1M1_POSITION                              0x7
#define _CCP1CON_P1M1_SIZE                                  0x1
#define _CCP1CON_P1M1_LENGTH                                0x1
#define _CCP1CON_P1M1_MASK                                  0x80

// Register: CCPR1
extern volatile unsigned short          CCPR1               @ 0xFBE;
#ifndef _LIB_BUILD
asm("CCPR1 equ 0FBEh");
#endif

// Register: CCPR1L
extern volatile unsigned char           CCPR1L              @ 0xFBE;
#ifndef _LIB_BUILD
asm("CCPR1L equ 0FBEh");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned CCPR1L                 :8;
    };
} CCPR1Lbits_t;
extern volatile CCPR1Lbits_t CCPR1Lbits @ 0xFBE;
// bitfield macros
#define _CCPR1L_CCPR1L_POSN                                 0x0
#define _CCPR1L_CCPR1L_POSITION                             0x0
#define _CCPR1L_CCPR1L_SIZE                                 0x8
#define _CCPR1L_CCPR1L_LENGTH                               0x8
#define _CCPR1L_CCPR1L_MASK                                 0xFF

// Register: CCPR1H
extern volatile unsigned char           CCPR1H              @ 0xFBF;
#ifndef _LIB_BUILD
asm("CCPR1H equ 0FBFh");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned CCPR1H                 :8;
    };
} CCPR1Hbits_t;
extern volatile CCPR1Hbits_t CCPR1Hbits @ 0xFBF;
// bitfield macros
#define _CCPR1H_CCPR1H_POSN                                 0x0
#define _CCPR1H_CCPR1H_POSITION                             0x0
#define _CCPR1H_CCPR1H_SIZE                                 0x8
#define _CCPR1H_CCPR1H_LENGTH                               0x8
#define _CCPR1H_CCPR1H_MASK                                 0xFF

// Register: ADCON2
extern volatile unsigned char           ADCON2              @ 0xFC0;
#ifndef _LIB_BUILD
asm("ADCON2 equ 0FC0h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned ADCS                   :3;
        unsigned ACQT                   :3;
        unsigned                        :1;
        unsigned ADFM                   :1;
    };
    struct {
        unsigned ADCS0                  :1;
        unsigned ADCS1                  :1;
        unsigned ADCS2                  :1;
        unsigned ACQT0                  :1;
        unsigned ACQT1                  :1;
        unsigned ACQT2                  :1;
    };
} ADCON2bits_t;
extern volatile ADCON2bits_t ADCON2bits @ 0xFC0;
// bitfield macros
#define _ADCON2_ADCS_POSN                                   0x0
#define _ADCON2_ADCS_POSITION                               0x0
#define _ADCON2_ADCS_SIZE                                   0x3
#define _ADCON2_ADCS_LENGTH                                 0x3
#define _ADCON2_ADCS_MASK                                   0x7
#define _ADCON2_ACQT_POSN                                   0x3
#define _ADCON2_ACQT_POSITION                               0x3
#define _ADCON2_ACQT_SIZE                                   0x3
#define _ADCON2_ACQT_LENGTH                                 0x3
#define _ADCON2_ACQT_MASK                                   0x38
#define _ADCON2_ADFM_POSN                                   0x7
#define _ADCON2_ADFM_POSITION                               0x7
#define _ADCON2_ADFM_SIZE                                   0x1
#define _ADCON2_ADFM_LENGTH                                 0x1
#define _ADCON2_ADFM_MASK                                   0x80
#define _ADCON2_ADCS0_POSN                                  0x0
#define _ADCON2_ADCS0_POSITION                              0x0
#define _ADCON2_ADCS0_SIZE                                  0x1
#define _ADCON2_ADCS0_LENGTH                                0x1
#define _ADCON2_ADCS0_MASK                                  0x1
#define _ADCON2_ADCS1_POSN                                  0x1
#define _ADCON2_ADCS1_POSITION                              0x1
#define _ADCON2_ADCS1_SIZE                                  0x1
#define _ADCON2_ADCS1_LENGTH                                0x1
#define _ADCON2_ADCS1_MASK                                  0x2
#define _ADCON2_ADCS2_POSN                                  0x2
#define _ADCON2_ADCS2_POSITION                              0x2
#define _ADCON2_ADCS2_SIZE                                  0x1
#define _ADCON2_ADCS2_LENGTH                                0x1
#define _ADCON2_ADCS2_MASK                                  0x4
#define _ADCON2_ACQT0_POSN                                  0x3
#define _ADCON2_ACQT0_POSITION                              0x3
#define _ADCON2_ACQT0_SIZE                                  0x1
#define _ADCON2_ACQT0_LENGTH                                0x1
#define _ADCON2_ACQT0_MASK                                  0x8
#define _ADCON2_ACQT1_POSN                                  0x4
#define _ADCON2_ACQT1_POSITION                              0x4
#define _ADCON2_ACQT1_SIZE                                  0x1
#define _ADCON2_ACQT1_LENGTH                                0x1
#define _ADCON2_ACQT1_MASK                                  0x10
#define _ADCON2_ACQT2_POSN                                  0x5
#define _ADCON2_ACQT2_POSITION                              0x5
#define _ADCON2_ACQT2_SIZE                                  0x1
#define _ADCON2_ACQT2_LENGTH                                0x1
#define _ADCON2_ACQT2_MASK                                  0x20

// Register: ADCON1
extern volatile unsigned char           ADCON1              @ 0xFC1;
#ifndef _LIB_BUILD
asm("ADCON1 equ 0FC1h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned NVCFG                  :2;
        unsigned PVCFG                  :2;
        unsigned                        :3;
        unsigned TRIGSEL                :1;
    };
    struct {
        unsigned NVCFG0                 :1;
        unsigned NVCFG1                 :1;
        unsigned PVCFG0                 :1;
        unsigned PVCFG1                 :1;
    };
    struct {
        unsigned                        :3;
        unsigned CHSN3                  :1;
    };
} ADCON1bits_t;
extern volatile ADCON1bits_t ADCON1bits @ 0xFC1;
// bitfield macros
#define _ADCON1_NVCFG_POSN                                  0x0
#define _ADCON1_NVCFG_POSITION                              0x0
#define _ADCON1_NVCFG_SIZE                                  0x2
#define _ADCON1_NVCFG_LENGTH                                0x2
#define _ADCON1_NVCFG_MASK                                  0x3
#define _ADCON1_PVCFG_POSN                                  0x2
#define _ADCON1_PVCFG_POSITION                              0x2
#define _ADCON1_PVCFG_SIZE                                  0x2
#define _ADCON1_PVCFG_LENGTH                                0x2
#define _ADCON1_PVCFG_MASK                                  0xC
#define _ADCON1_TRIGSEL_POSN                                0x7
#define _ADCON1_TRIGSEL_POSITION                            0x7
#define _ADCON1_TRIGSEL_SIZE                                0x1
#define _ADCON1_TRIGSEL_LENGTH                              0x1
#define _ADCON1_TRIGSEL_MASK                                0x80
#define _ADCON1_NVCFG0_POSN                                 0x0
#define _ADCON1_NVCFG0_POSITION                             0x0
#define _ADCON1_NVCFG0_SIZE                                 0x1
#define _ADCON1_NVCFG0_LENGTH                               0x1
#define _ADCON1_NVCFG0_MASK                                 0x1
#define _ADCON1_NVCFG1_POSN                                 0x1
#define _ADCON1_NVCFG1_POSITION                             0x1
#define _ADCON1_NVCFG1_SIZE                                 0x1
#define _ADCON1_NVCFG1_LENGTH                               0x1
#define _ADCON1_NVCFG1_MASK                                 0x2
#define _ADCON1_PVCFG0_POSN                                 0x2
#define _ADCON1_PVCFG0_POSITION                             0x2
#define _ADCON1_PVCFG0_SIZE                                 0x1
#define _ADCON1_PVCFG0_LENGTH                               0x1
#define _ADCON1_PVCFG0_MASK                                 0x4
#define _ADCON1_PVCFG1_POSN                                 0x3
#define _ADCON1_PVCFG1_POSITION                             0x3
#define _ADCON1_PVCFG1_SIZE                                 0x1
#define _ADCON1_PVCFG1_LENGTH                               0x1
#define _ADCON1_PVCFG1_MASK                                 0x8
#define _ADCON1_CHSN3_POSN                                  0x3
#define _ADCON1_CHSN3_POSITION                              0x3
#define _ADCON1_CHSN3_SIZE                                  0x1
#define _ADCON1_CHSN3_LENGTH                                0x1
#define _ADCON1_CHSN3_MASK                                  0x8

// Register: ADCON0
extern volatile unsigned char           ADCON0              @ 0xFC2;
#ifndef _LIB_BUILD
asm("ADCON0 equ 0FC2h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned                        :1;
        unsigned GO_NOT_DONE            :1;
    };
    struct {
        unsigned ADON                   :1;
        unsigned GO_nDONE               :1;
        unsigned CHS                    :5;
    };
    struct {
        unsigned                        :1;
        unsigned GO                     :1;
        unsigned CHS0                   :1;
        unsigned CHS1                   :1;
        unsigned CHS2                   :1;
        unsigned CHS3                   :1;
        unsigned CHS4                   :1;
    };
    struct {
        unsigned                        :1;
        unsigned DONE                   :1;
    };
    struct {
        unsigned                        :1;
        unsigned NOT_DONE               :1;
    };
    struct {
        unsigned                        :1;
        unsigned nDONE                  :1;
    };
    struct {
        unsigned                        :1;
        unsigned GO_DONE                :1;
    };
    struct {
        unsigned                        :1;
        unsigned GODONE                 :1;
    };
} ADCON0bits_t;
extern volatile ADCON0bits_t ADCON0bits @ 0xFC2;
// bitfield macros
#define _ADCON0_GO_NOT_DONE_POSN                            0x1
#define _ADCON0_GO_NOT_DONE_POSITION                        0x1
#define _ADCON0_GO_NOT_DONE_SIZE                            0x1
#define _ADCON0_GO_NOT_DONE_LENGTH                          0x1
#define _ADCON0_GO_NOT_DONE_MASK                            0x2
#define _ADCON0_ADON_POSN                                   0x0
#define _ADCON0_ADON_POSITION                               0x0
#define _ADCON0_ADON_SIZE                                   0x1
#define _ADCON0_ADON_LENGTH                                 0x1
#define _ADCON0_ADON_MASK                                   0x1
#define _ADCON0_GO_nDONE_POSN                               0x1
#define _ADCON0_GO_nDONE_POSITION                           0x1
#define _ADCON0_GO_nDONE_SIZE                               0x1
#define _ADCON0_GO_nDONE_LENGTH                             0x1
#define _ADCON0_GO_nDONE_MASK                               0x2
#define _ADCON0_CHS_POSN                                    0x2
#define _ADCON0_CHS_POSITION                                0x2
#define _ADCON0_CHS_SIZE                                    0x5
#define _ADCON0_CHS_LENGTH                                  0x5
#define _ADCON0_CHS_MASK                                    0x7C
#define _ADCON0_GO_POSN                                     0x1
#define _ADCON0_GO_POSITION                                 0x1
#define _ADCON0_GO_SIZE                                     0x1
#define _ADCON0_GO_LENGTH                                   0x1
#define _ADCON0_GO_MASK                                     0x2
#define _ADCON0_CHS0_POSN                                   0x2
#define _ADCON0_CHS0_POSITION                               0x2
#define _ADCON0_CHS0_SIZE                                   0x1
#define _ADCON0_CHS0_LENGTH                                 0x1
#define _ADCON0_CHS0_MASK                                   0x4
#define _ADCON0_CHS1_POSN                                   0x3
#define _ADCON0_CHS1_POSITION                               0x3
#define _ADCON0_CHS1_SIZE                                   0x1
#define _ADCON0_CHS1_LENGTH                                 0x1
#define _ADCON0_CHS1_MASK                                   0x8
#define _ADCON0_CHS2_POSN                                   0x4
#define _ADCON0_CHS2_POSITION                               0x4
#define _ADCON0_CHS2_SIZE                                   0x1
#define _ADCON0_CHS2_LENGTH                                 0x1
#define _ADCON0_CHS2_MASK                                   0x10
#define _ADCON0_CHS3_POSN                                   0x5
#define _ADCON0_CHS3_POSITION                               0x5
#define _ADCON0_CHS3_SIZE                                   0x1
#define _ADCON0_CHS3_LENGTH                                 0x1
#define _ADCON0_CHS3_MASK                                   0x20
#define _ADCON0_CHS4_POSN                                   0x6
#define _ADCON0_CHS4_POSITION                               0x6
#define _ADCON0_CHS4_SIZE                                   0x1
#define _ADCON0_CHS4_LENGTH                                 0x1
#define _ADCON0_CHS4_MASK                                   0x40
#define _ADCON0_DONE_POSN                                   0x1
#define _ADCON0_DONE_POSITION                               0x1
#define _ADCON0_DONE_SIZE                                   0x1
#define _ADCON0_DONE_LENGTH                                 0x1
#define _ADCON0_DONE_MASK                                   0x2
#define _ADCON0_NOT_DONE_POSN                               0x1
#define _ADCON0_NOT_DONE_POSITION                           0x1
#define _ADCON0_NOT_DONE_SIZE                               0x1
#define _ADCON0_NOT_DONE_LENGTH                             0x1
#define _ADCON0_NOT_DONE_MASK                               0x2
#define _ADCON0_nDONE_POSN                                  0x1
#define _ADCON0_nDONE_POSITION                              0x1
#define _ADCON0_nDONE_SIZE                                  0x1
#define _ADCON0_nDONE_LENGTH                                0x1
#define _ADCON0_nDONE_MASK                                  0x2
#define _ADCON0_GO_DONE_POSN                                0x1
#define _ADCON0_GO_DONE_POSITION                            0x1
#define _ADCON0_GO_DONE_SIZE                                0x1
#define _ADCON0_GO_DONE_LENGTH                              0x1
#define _ADCON0_GO_DONE_MASK                                0x2
#define _ADCON0_GODONE_POSN                                 0x1
#define _ADCON0_GODONE_POSITION                             0x1
#define _ADCON0_GODONE_SIZE                                 0x1
#define _ADCON0_GODONE_LENGTH                               0x1
#define _ADCON0_GODONE_MASK                                 0x2

// Register: ADRES
extern volatile unsigned short          ADRES               @ 0xFC3;
#ifndef _LIB_BUILD
asm("ADRES equ 0FC3h");
#endif

// Register: ADRESL
extern volatile unsigned char           ADRESL              @ 0xFC3;
#ifndef _LIB_BUILD
asm("ADRESL equ 0FC3h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned ADRESL                 :8;
    };
} ADRESLbits_t;
extern volatile ADRESLbits_t ADRESLbits @ 0xFC3;
// bitfield macros
#define _ADRESL_ADRESL_POSN                                 0x0
#define _ADRESL_ADRESL_POSITION                             0x0
#define _ADRESL_ADRESL_SIZE                                 0x8
#define _ADRESL_ADRESL_LENGTH                               0x8
#define _ADRESL_ADRESL_MASK                                 0xFF

// Register: ADRESH
extern volatile unsigned char           ADRESH              @ 0xFC4;
#ifndef _LIB_BUILD
asm("ADRESH equ 0FC4h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned ADRESH                 :8;
    };
} ADRESHbits_t;
extern volatile ADRESHbits_t ADRESHbits @ 0xFC4;
// bitfield macros
#define _ADRESH_ADRESH_POSN                                 0x0
#define _ADRESH_ADRESH_POSITION                             0x0
#define _ADRESH_ADRESH_SIZE                                 0x8
#define _ADRESH_ADRESH_LENGTH                               0x8
#define _ADRESH_ADRESH_MASK                                 0xFF

// Register: SSP1CON2
extern volatile unsigned char           SSP1CON2            @ 0xFC5;
#ifndef _LIB_BUILD
asm("SSP1CON2 equ 0FC5h");
#endif
// aliases
extern volatile unsigned char           SSPCON2             @ 0xFC5;
#ifndef _LIB_BUILD
asm("SSPCON2 equ 0FC5h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned SEN                    :1;
        unsigned RSEN                   :1;
        unsigned PEN                    :1;
        unsigned RCEN                   :1;
        unsigned ACKEN                  :1;
        unsigned ACKDT                  :1;
        unsigned ACKSTAT                :1;
        unsigned GCEN                   :1;
    };
    struct {
        unsigned SEN1                   :1;
        unsigned ADMSK1                 :1;
        unsigned ADMSK2                 :1;
        unsigned ADMSK3                 :1;
        unsigned ACKEN1                 :1;
        unsigned ACKDT1                 :1;
        unsigned ACKSTAT1               :1;
        unsigned GCEN1                  :1;
    };
    struct {
        unsigned                        :1;
        unsigned ADMSK11                :1;
        unsigned ADMSK21                :1;
        unsigned ADMSK31                :1;
        unsigned ADMSK4                 :1;
        unsigned ADMSK5                 :1;
    };
    struct {
        unsigned                        :1;
        unsigned RSEN1                  :1;
        unsigned PEN1                   :1;
        unsigned RCEN1                  :1;
        unsigned ADMSK41                :1;
        unsigned ADMSK51                :1;
    };
} SSP1CON2bits_t;
extern volatile SSP1CON2bits_t SSP1CON2bits @ 0xFC5;
// bitfield macros
#define _SSP1CON2_SEN_POSN                                  0x0
#define _SSP1CON2_SEN_POSITION                              0x0
#define _SSP1CON2_SEN_SIZE                                  0x1
#define _SSP1CON2_SEN_LENGTH                                0x1
#define _SSP1CON2_SEN_MASK                                  0x1
#define _SSP1CON2_RSEN_POSN                                 0x1
#define _SSP1CON2_RSEN_POSITION                             0x1
#define _SSP1CON2_RSEN_SIZE                                 0x1
#define _SSP1CON2_RSEN_LENGTH                               0x1
#define _SSP1CON2_RSEN_MASK                                 0x2
#define _SSP1CON2_PEN_POSN                                  0x2
#define _SSP1CON2_PEN_POSITION                              0x2
#define _SSP1CON2_PEN_SIZE                                  0x1
#define _SSP1CON2_PEN_LENGTH                                0x1
#define _SSP1CON2_PEN_MASK                                  0x4
#define _SSP1CON2_RCEN_POSN                                 0x3
#define _SSP1CON2_RCEN_POSITION                             0x3
#define _SSP1CON2_RCEN_SIZE                                 0x1
#define _SSP1CON2_RCEN_LENGTH                               0x1
#define _SSP1CON2_RCEN_MASK                                 0x8
#define _SSP1CON2_ACKEN_POSN                                0x4
#define _SSP1CON2_ACKEN_POSITION                            0x4
#define _SSP1CON2_ACKEN_SIZE                                0x1
#define _SSP1CON2_ACKEN_LENGTH                              0x1
#define _SSP1CON2_ACKEN_MASK                                0x10
#define _SSP1CON2_ACKDT_POSN                                0x5
#define _SSP1CON2_ACKDT_POSITION                            0x5
#define _SSP1CON2_ACKDT_SIZE                                0x1
#define _SSP1CON2_ACKDT_LENGTH                              0x1
#define _SSP1CON2_ACKDT_MASK                                0x20
#define _SSP1CON2_ACKSTAT_POSN                              0x6
#define _SSP1CON2_ACKSTAT_POSITION                          0x6
#define _SSP1CON2_ACKSTAT_SIZE                              0x1
#define _SSP1CON2_ACKSTAT_LENGTH                            0x1
#define _SSP1CON2_ACKSTAT_MASK                              0x40
#define _SSP1CON2_GCEN_POSN                                 0x7
#define _SSP1CON2_GCEN_POSITION                             0x7
#define _SSP1CON2_GCEN_SIZE                                 0x1
#define _SSP1CON2_GCEN_LENGTH                               0x1
#define _SSP1CON2_GCEN_MASK                                 0x80
#define _SSP1CON2_SEN1_POSN                                 0x0
#define _SSP1CON2_SEN1_POSITION                             0x0
#define _SSP1CON2_SEN1_SIZE                                 0x1
#define _SSP1CON2_SEN1_LENGTH                               0x1
#define _SSP1CON2_SEN1_MASK                                 0x1
#define _SSP1CON2_ADMSK1_POSN                               0x1
#define _SSP1CON2_ADMSK1_POSITION                           0x1
#define _SSP1CON2_ADMSK1_SIZE                               0x1
#define _SSP1CON2_ADMSK1_LENGTH                             0x1
#define _SSP1CON2_ADMSK1_MASK                               0x2
#define _SSP1CON2_ADMSK2_POSN                               0x2
#define _SSP1CON2_ADMSK2_POSITION                           0x2
#define _SSP1CON2_ADMSK2_SIZE                               0x1
#define _SSP1CON2_ADMSK2_LENGTH                             0x1
#define _SSP1CON2_ADMSK2_MASK                               0x4
#define _SSP1CON2_ADMSK3_POSN                               0x3
#define _SSP1CON2_ADMSK3_POSITION                           0x3
#define _SSP1CON2_ADMSK3_SIZE                               0x1
#define _SSP1CON2_ADMSK3_LENGTH                             0x1
#define _SSP1CON2_ADMSK3_MASK                               0x8
#define _SSP1CON2_ACKEN1_POSN                               0x4
#define _SSP1CON2_ACKEN1_POSITION                           0x4
#define _SSP1CON2_ACKEN1_SIZE                               0x1
#define _SSP1CON2_ACKEN1_LENGTH                             0x1
#define _SSP1CON2_ACKEN1_MASK                               0x10
#define _SSP1CON2_ACKDT1_POSN                               0x5
#define _SSP1CON2_ACKDT1_POSITION                           0x5
#define _SSP1CON2_ACKDT1_SIZE                               0x1
#define _SSP1CON2_ACKDT1_LENGTH                             0x1
#define _SSP1CON2_ACKDT1_MASK                               0x20
#define _SSP1CON2_ACKSTAT1_POSN                             0x6
#define _SSP1CON2_ACKSTAT1_POSITION                         0x6
#define _SSP1CON2_ACKSTAT1_SIZE                             0x1
#define _SSP1CON2_ACKSTAT1_LENGTH                           0x1
#define _SSP1CON2_ACKSTAT1_MASK                             0x40
#define _SSP1CON2_GCEN1_POSN                                0x7
#define _SSP1CON2_GCEN1_POSITION                            0x7
#define _SSP1CON2_GCEN1_SIZE                                0x1
#define _SSP1CON2_GCEN1_LENGTH                              0x1
#define _SSP1CON2_GCEN1_MASK                                0x80
#define _SSP1CON2_ADMSK11_POSN                              0x1
#define _SSP1CON2_ADMSK11_POSITION                          0x1
#define _SSP1CON2_ADMSK11_SIZE                              0x1
#define _SSP1CON2_ADMSK11_LENGTH                            0x1
#define _SSP1CON2_ADMSK11_MASK                              0x2
#define _SSP1CON2_ADMSK21_POSN                              0x2
#define _SSP1CON2_ADMSK21_POSITION                          0x2
#define _SSP1CON2_ADMSK21_SIZE                              0x1
#define _SSP1CON2_ADMSK21_LENGTH                            0x1
#define _SSP1CON2_ADMSK21_MASK                              0x4
#define _SSP1CON2_ADMSK31_POSN                              0x3
#define _SSP1CON2_ADMSK31_POSITION                          0x3
#define _SSP1CON2_ADMSK31_SIZE                              0x1
#define _SSP1CON2_ADMSK31_LENGTH                            0x1
#define _SSP1CON2_ADMSK31_MASK                              0x8
#define _SSP1CON2_ADMSK4_POSN                               0x4
#define _SSP1CON2_ADMSK4_POSITION                           0x4
#define _SSP1CON2_ADMSK4_SIZE                               0x1
#define _SSP1CON2_ADMSK4_LENGTH                             0x1
#define _SSP1CON2_ADMSK4_MASK                               0x10
#define _SSP1CON2_ADMSK5_POSN                               0x5
#define _SSP1CON2_ADMSK5_POSITION                           0x5
#define _SSP1CON2_ADMSK5_SIZE                               0x1
#define _SSP1CON2_ADMSK5_LENGTH                             0x1
#define _SSP1CON2_ADMSK5_MASK                               0x20
#define _SSP1CON2_RSEN1_POSN                                0x1
#define _SSP1CON2_RSEN1_POSITION                            0x1
#define _SSP1CON2_RSEN1_SIZE                                0x1
#define _SSP1CON2_RSEN1_LENGTH                              0x1
#define _SSP1CON2_RSEN1_MASK                                0x2
#define _SSP1CON2_PEN1_POSN                                 0x2
#define _SSP1CON2_PEN1_POSITION                             0x2
#define _SSP1CON2_PEN1_SIZE                                 0x1
#define _SSP1CON2_PEN1_LENGTH                               0x1
#define _SSP1CON2_PEN1_MASK                                 0x4
#define _SSP1CON2_RCEN1_POSN                                0x3
#define _SSP1CON2_RCEN1_POSITION                            0x3
#define _SSP1CON2_RCEN1_SIZE                                0x1
#define _SSP1CON2_RCEN1_LENGTH                              0x1
#define _SSP1CON2_RCEN1_MASK                                0x8
#define _SSP1CON2_ADMSK41_POSN                              0x4
#define _SSP1CON2_ADMSK41_POSITION                          0x4
#define _SSP1CON2_ADMSK41_SIZE                              0x1
#define _SSP1CON2_ADMSK41_LENGTH                            0x1
#define _SSP1CON2_ADMSK41_MASK                              0x10
#define _SSP1CON2_ADMSK51_POSN                              0x5
#define _SSP1CON2_ADMSK51_POSITION                          0x5
#define _SSP1CON2_ADMSK51_SIZE                              0x1
#define _SSP1CON2_ADMSK51_LENGTH                            0x1
#define _SSP1CON2_ADMSK51_MASK                              0x20
// alias bitfield definitions
typedef union {
    struct {
        unsigned SEN                    :1;
        unsigned RSEN                   :1;
        unsigned PEN                    :1;
        unsigned RCEN                   :1;
        unsigned ACKEN                  :1;
        unsigned ACKDT                  :1;
        unsigned ACKSTAT                :1;
        unsigned GCEN                   :1;
    };
    struct {
        unsigned SEN1                   :1;
        unsigned ADMSK1                 :1;
        unsigned ADMSK2                 :1;
        unsigned ADMSK3                 :1;
        unsigned ACKEN1                 :1;
        unsigned ACKDT1                 :1;
        unsigned ACKSTAT1               :1;
        unsigned GCEN1                  :1;
    };
    struct {
        unsigned                        :1;
        unsigned ADMSK11                :1;
        unsigned ADMSK21                :1;
        unsigned ADMSK31                :1;
        unsigned ADMSK4                 :1;
        unsigned ADMSK5                 :1;
    };
    struct {
        unsigned                        :1;
        unsigned RSEN1                  :1;
        unsigned PEN1                   :1;
        unsigned RCEN1                  :1;
        unsigned ADMSK41                :1;
        unsigned ADMSK51                :1;
    };
} SSPCON2bits_t;
extern volatile SSPCON2bits_t SSPCON2bits @ 0xFC5;
// bitfield macros
#define _SSPCON2_SEN_POSN                                   0x0
#define _SSPCON2_SEN_POSITION                               0x0
#define _SSPCON2_SEN_SIZE                                   0x1
#define _SSPCON2_SEN_LENGTH                                 0x1
#define _SSPCON2_SEN_MASK                                   0x1
#define _SSPCON2_RSEN_POSN                                  0x1
#define _SSPCON2_RSEN_POSITION                              0x1
#define _SSPCON2_RSEN_SIZE                                  0x1
#define _SSPCON2_RSEN_LENGTH                                0x1
#define _SSPCON2_RSEN_MASK                                  0x2
#define _SSPCON2_PEN_POSN                                   0x2
#define _SSPCON2_PEN_POSITION                               0x2
#define _SSPCON2_PEN_SIZE                                   0x1
#define _SSPCON2_PEN_LENGTH                                 0x1
#define _SSPCON2_PEN_MASK                                   0x4
#define _SSPCON2_RCEN_POSN                                  0x3
#define _SSPCON2_RCEN_POSITION                              0x3
#define _SSPCON2_RCEN_SIZE                                  0x1
#define _SSPCON2_RCEN_LENGTH                                0x1
#define _SSPCON2_RCEN_MASK                                  0x8
#define _SSPCON2_ACKEN_POSN                                 0x4
#define _SSPCON2_ACKEN_POSITION                             0x4
#define _SSPCON2_ACKEN_SIZE                                 0x1
#define _SSPCON2_ACKEN_LENGTH                               0x1
#define _SSPCON2_ACKEN_MASK                                 0x10
#define _SSPCON2_ACKDT_POSN                                 0x5
#define _SSPCON2_ACKDT_POSITION                             0x5
#define _SSPCON2_ACKDT_SIZE                                 0x1
#define _SSPCON2_ACKDT_LENGTH                               0x1
#define _SSPCON2_ACKDT_MASK                                 0x20
#define _SSPCON2_ACKSTAT_POSN                               0x6
#define _SSPCON2_ACKSTAT_POSITION                           0x6
#define _SSPCON2_ACKSTAT_SIZE                               0x1
#define _SSPCON2_ACKSTAT_LENGTH                             0x1
#define _SSPCON2_ACKSTAT_MASK                               0x40
#define _SSPCON2_GCEN_POSN                                  0x7
#define _SSPCON2_GCEN_POSITION                              0x7
#define _SSPCON2_GCEN_SIZE                                  0x1
#define _SSPCON2_GCEN_LENGTH                                0x1
#define _SSPCON2_GCEN_MASK                                  0x80
#define _SSPCON2_SEN1_POSN                                  0x0
#define _SSPCON2_SEN1_POSITION                              0x0
#define _SSPCON2_SEN1_SIZE                                  0x1
#define _SSPCON2_SEN1_LENGTH                                0x1
#define _SSPCON2_SEN1_MASK                                  0x1
#define _SSPCON2_ADMSK1_POSN                                0x1
#define _SSPCON2_ADMSK1_POSITION                            0x1
#define _SSPCON2_ADMSK1_SIZE                                0x1
#define _SSPCON2_ADMSK1_LENGTH                              0x1
#define _SSPCON2_ADMSK1_MASK                                0x2
#define _SSPCON2_ADMSK2_POSN                                0x2
#define _SSPCON2_ADMSK2_POSITION                            0x2
#define _SSPCON2_ADMSK2_SIZE                                0x1
#define _SSPCON2_ADMSK2_LENGTH                              0x1
#define _SSPCON2_ADMSK2_MASK                                0x4
#define _SSPCON2_ADMSK3_POSN                                0x3
#define _SSPCON2_ADMSK3_POSITION                            0x3
#define _SSPCON2_ADMSK3_SIZE                                0x1
#define _SSPCON2_ADMSK3_LENGTH                              0x1
#define _SSPCON2_ADMSK3_MASK                                0x8
#define _SSPCON2_ACKEN1_POSN                                0x4
#define _SSPCON2_ACKEN1_POSITION                            0x4
#define _SSPCON2_ACKEN1_SIZE                                0x1
#define _SSPCON2_ACKEN1_LENGTH                              0x1
#define _SSPCON2_ACKEN1_MASK                                0x10
#define _SSPCON2_ACKDT1_POSN                                0x5
#define _SSPCON2_ACKDT1_POSITION                            0x5
#define _SSPCON2_ACKDT1_SIZE                                0x1
#define _SSPCON2_ACKDT1_LENGTH                              0x1
#define _SSPCON2_ACKDT1_MASK                                0x20
#define _SSPCON2_ACKSTAT1_POSN                              0x6
#define _SSPCON2_ACKSTAT1_POSITION                          0x6
#define _SSPCON2_ACKSTAT1_SIZE                              0x1
#define _SSPCON2_ACKSTAT1_LENGTH                            0x1
#define _SSPCON2_ACKSTAT1_MASK                              0x40
#define _SSPCON2_GCEN1_POSN                                 0x7
#define _SSPCON2_GCEN1_POSITION                             0x7
#define _SSPCON2_GCEN1_SIZE                                 0x1
#define _SSPCON2_GCEN1_LENGTH                               0x1
#define _SSPCON2_GCEN1_MASK                                 0x80
#define _SSPCON2_ADMSK11_POSN                               0x1
#define _SSPCON2_ADMSK11_POSITION                           0x1
#define _SSPCON2_ADMSK11_SIZE                               0x1
#define _SSPCON2_ADMSK11_LENGTH                             0x1
#define _SSPCON2_ADMSK11_MASK                               0x2
#define _SSPCON2_ADMSK21_POSN                               0x2
#define _SSPCON2_ADMSK21_POSITION                           0x2
#define _SSPCON2_ADMSK21_SIZE                               0x1
#define _SSPCON2_ADMSK21_LENGTH                             0x1
#define _SSPCON2_ADMSK21_MASK                               0x4
#define _SSPCON2_ADMSK31_POSN                               0x3
#define _SSPCON2_ADMSK31_POSITION                           0x3
#define _SSPCON2_ADMSK31_SIZE                               0x1
#define _SSPCON2_ADMSK31_LENGTH                             0x1
#define _SSPCON2_ADMSK31_MASK                               0x8
#define _SSPCON2_ADMSK4_POSN                                0x4
#define _SSPCON2_ADMSK4_POSITION                            0x4
#define _SSPCON2_ADMSK4_SIZE                                0x1
#define _SSPCON2_ADMSK4_LENGTH                              0x1
#define _SSPCON2_ADMSK4_MASK                                0x10
#define _SSPCON2_ADMSK5_POSN                                0x5
#define _SSPCON2_ADMSK5_POSITION                            0x5
#define _SSPCON2_ADMSK5_SIZE                                0x1
#define _SSPCON2_ADMSK5_LENGTH                              0x1
#define _SSPCON2_ADMSK5_MASK                                0x20
#define _SSPCON2_RSEN1_POSN                                 0x1
#define _SSPCON2_RSEN1_POSITION                             0x1
#define _SSPCON2_RSEN1_SIZE                                 0x1
#define _SSPCON2_RSEN1_LENGTH                               0x1
#define _SSPCON2_RSEN1_MASK                                 0x2
#define _SSPCON2_PEN1_POSN                                  0x2
#define _SSPCON2_PEN1_POSITION                              0x2
#define _SSPCON2_PEN1_SIZE                                  0x1
#define _SSPCON2_PEN1_LENGTH                                0x1
#define _SSPCON2_PEN1_MASK                                  0x4
#define _SSPCON2_RCEN1_POSN                                 0x3
#define _SSPCON2_RCEN1_POSITION                             0x3
#define _SSPCON2_RCEN1_SIZE                                 0x1
#define _SSPCON2_RCEN1_LENGTH                               0x1
#define _SSPCON2_RCEN1_MASK                                 0x8
#define _SSPCON2_ADMSK41_POSN                               0x4
#define _SSPCON2_ADMSK41_POSITION                           0x4
#define _SSPCON2_ADMSK41_SIZE                               0x1
#define _SSPCON2_ADMSK41_LENGTH                             0x1
#define _SSPCON2_ADMSK41_MASK                               0x10
#define _SSPCON2_ADMSK51_POSN                               0x5
#define _SSPCON2_ADMSK51_POSITION                           0x5
#define _SSPCON2_ADMSK51_SIZE                               0x1
#define _SSPCON2_ADMSK51_LENGTH                             0x1
#define _SSPCON2_ADMSK51_MASK                               0x20

// Register: SSP1CON1
extern volatile unsigned char           SSP1CON1            @ 0xFC6;
#ifndef _LIB_BUILD
asm("SSP1CON1 equ 0FC6h");
#endif
// aliases
extern volatile unsigned char           SSPCON1             @ 0xFC6;
#ifndef _LIB_BUILD
asm("SSPCON1 equ 0FC6h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned SSPM                   :4;
        unsigned CKP                    :1;
        unsigned SSPEN                  :1;
        unsigned SSPOV                  :1;
        unsigned WCOL                   :1;
    };
    struct {
        unsigned SSPM0                  :1;
        unsigned SSPM1                  :1;
        unsigned SSPM2                  :1;
        unsigned SSPM3                  :1;
    };
    struct {
        unsigned SSPM01                 :1;
        unsigned SSPM11                 :1;
        unsigned SSPM21                 :1;
        unsigned SSPM31                 :1;
        unsigned CKP1                   :1;
        unsigned SSPEN1                 :1;
        unsigned SSPOV1                 :1;
        unsigned WCOL1                  :1;
    };
} SSP1CON1bits_t;
extern volatile SSP1CON1bits_t SSP1CON1bits @ 0xFC6;
// bitfield macros
#define _SSP1CON1_SSPM_POSN                                 0x0
#define _SSP1CON1_SSPM_POSITION                             0x0
#define _SSP1CON1_SSPM_SIZE                                 0x4
#define _SSP1CON1_SSPM_LENGTH                               0x4
#define _SSP1CON1_SSPM_MASK                                 0xF
#define _SSP1CON1_CKP_POSN                                  0x4
#define _SSP1CON1_CKP_POSITION                              0x4
#define _SSP1CON1_CKP_SIZE                                  0x1
#define _SSP1CON1_CKP_LENGTH                                0x1
#define _SSP1CON1_CKP_MASK                                  0x10
#define _SSP1CON1_SSPEN_POSN                                0x5
#define _SSP1CON1_SSPEN_POSITION                            0x5
#define _SSP1CON1_SSPEN_SIZE                                0x1
#define _SSP1CON1_SSPEN_LENGTH                              0x1
#define _SSP1CON1_SSPEN_MASK                                0x20
#define _SSP1CON1_SSPOV_POSN                                0x6
#define _SSP1CON1_SSPOV_POSITION                            0x6
#define _SSP1CON1_SSPOV_SIZE                                0x1
#define _SSP1CON1_SSPOV_LENGTH                              0x1
#define _SSP1CON1_SSPOV_MASK                                0x40
#define _SSP1CON1_WCOL_POSN                                 0x7
#define _SSP1CON1_WCOL_POSITION                             0x7
#define _SSP1CON1_WCOL_SIZE                                 0x1
#define _SSP1CON1_WCOL_LENGTH                               0x1
#define _SSP1CON1_WCOL_MASK                                 0x80
#define _SSP1CON1_SSPM0_POSN                                0x0
#define _SSP1CON1_SSPM0_POSITION                            0x0
#define _SSP1CON1_SSPM0_SIZE                                0x1
#define _SSP1CON1_SSPM0_LENGTH                              0x1
#define _SSP1CON1_SSPM0_MASK                                0x1
#define _SSP1CON1_SSPM1_POSN                                0x1
#define _SSP1CON1_SSPM1_POSITION                            0x1
#define _SSP1CON1_SSPM1_SIZE                                0x1
#define _SSP1CON1_SSPM1_LENGTH                              0x1
#define _SSP1CON1_SSPM1_MASK                                0x2
#define _SSP1CON1_SSPM2_POSN                                0x2
#define _SSP1CON1_SSPM2_POSITION                            0x2
#define _SSP1CON1_SSPM2_SIZE                                0x1
#define _SSP1CON1_SSPM2_LENGTH                              0x1
#define _SSP1CON1_SSPM2_MASK                                0x4
#define _SSP1CON1_SSPM3_POSN                                0x3
#define _SSP1CON1_SSPM3_POSITION                            0x3
#define _SSP1CON1_SSPM3_SIZE                                0x1
#define _SSP1CON1_SSPM3_LENGTH                              0x1
#define _SSP1CON1_SSPM3_MASK                                0x8
#define _SSP1CON1_SSPM01_POSN                               0x0
#define _SSP1CON1_SSPM01_POSITION                           0x0
#define _SSP1CON1_SSPM01_SIZE                               0x1
#define _SSP1CON1_SSPM01_LENGTH                             0x1
#define _SSP1CON1_SSPM01_MASK                               0x1
#define _SSP1CON1_SSPM11_POSN                               0x1
#define _SSP1CON1_SSPM11_POSITION                           0x1
#define _SSP1CON1_SSPM11_SIZE                               0x1
#define _SSP1CON1_SSPM11_LENGTH                             0x1
#define _SSP1CON1_SSPM11_MASK                               0x2
#define _SSP1CON1_SSPM21_POSN                               0x2
#define _SSP1CON1_SSPM21_POSITION                           0x2
#define _SSP1CON1_SSPM21_SIZE                               0x1
#define _SSP1CON1_SSPM21_LENGTH                             0x1
#define _SSP1CON1_SSPM21_MASK                               0x4
#define _SSP1CON1_SSPM31_POSN                               0x3
#define _SSP1CON1_SSPM31_POSITION                           0x3
#define _SSP1CON1_SSPM31_SIZE                               0x1
#define _SSP1CON1_SSPM31_LENGTH                             0x1
#define _SSP1CON1_SSPM31_MASK                               0x8
#define _SSP1CON1_CKP1_POSN                                 0x4
#define _SSP1CON1_CKP1_POSITION                             0x4
#define _SSP1CON1_CKP1_SIZE                                 0x1
#define _SSP1CON1_CKP1_LENGTH                               0x1
#define _SSP1CON1_CKP1_MASK                                 0x10
#define _SSP1CON1_SSPEN1_POSN                               0x5
#define _SSP1CON1_SSPEN1_POSITION                           0x5
#define _SSP1CON1_SSPEN1_SIZE                               0x1
#define _SSP1CON1_SSPEN1_LENGTH                             0x1
#define _SSP1CON1_SSPEN1_MASK                               0x20
#define _SSP1CON1_SSPOV1_POSN                               0x6
#define _SSP1CON1_SSPOV1_POSITION                           0x6
#define _SSP1CON1_SSPOV1_SIZE                               0x1
#define _SSP1CON1_SSPOV1_LENGTH                             0x1
#define _SSP1CON1_SSPOV1_MASK                               0x40
#define _SSP1CON1_WCOL1_POSN                                0x7
#define _SSP1CON1_WCOL1_POSITION                            0x7
#define _SSP1CON1_WCOL1_SIZE                                0x1
#define _SSP1CON1_WCOL1_LENGTH                              0x1
#define _SSP1CON1_WCOL1_MASK                                0x80
// alias bitfield definitions
typedef union {
    struct {
        unsigned SSPM                   :4;
        unsigned CKP                    :1;
        unsigned SSPEN                  :1;
        unsigned SSPOV                  :1;
        unsigned WCOL                   :1;
    };
    struct {
        unsigned SSPM0                  :1;
        unsigned SSPM1                  :1;
        unsigned SSPM2                  :1;
        unsigned SSPM3                  :1;
    };
    struct {
        unsigned SSPM01                 :1;
        unsigned SSPM11                 :1;
        unsigned SSPM21                 :1;
        unsigned SSPM31                 :1;
        unsigned CKP1                   :1;
        unsigned SSPEN1                 :1;
        unsigned SSPOV1                 :1;
        unsigned WCOL1                  :1;
    };
} SSPCON1bits_t;
extern volatile SSPCON1bits_t SSPCON1bits @ 0xFC6;
// bitfield macros
#define _SSPCON1_SSPM_POSN                                  0x0
#define _SSPCON1_SSPM_POSITION                              0x0
#define _SSPCON1_SSPM_SIZE                                  0x4
#define _SSPCON1_SSPM_LENGTH                                0x4
#define _SSPCON1_SSPM_MASK                                  0xF
#define _SSPCON1_CKP_POSN                                   0x4
#define _SSPCON1_CKP_POSITION                               0x4
#define _SSPCON1_CKP_SIZE                                   0x1
#define _SSPCON1_CKP_LENGTH                                 0x1
#define _SSPCON1_CKP_MASK                                   0x10
#define _SSPCON1_SSPEN_POSN                                 0x5
#define _SSPCON1_SSPEN_POSITION                             0x5
#define _SSPCON1_SSPEN_SIZE                                 0x1
#define _SSPCON1_SSPEN_LENGTH                               0x1
#define _SSPCON1_SSPEN_MASK                                 0x20
#define _SSPCON1_SSPOV_POSN                                 0x6
#define _SSPCON1_SSPOV_POSITION                             0x6
#define _SSPCON1_SSPOV_SIZE                                 0x1
#define _SSPCON1_SSPOV_LENGTH                               0x1
#define _SSPCON1_SSPOV_MASK                                 0x40
#define _SSPCON1_WCOL_POSN                                  0x7
#define _SSPCON1_WCOL_POSITION                              0x7
#define _SSPCON1_WCOL_SIZE                                  0x1
#define _SSPCON1_WCOL_LENGTH                                0x1
#define _SSPCON1_WCOL_MASK                                  0x80
#define _SSPCON1_SSPM0_POSN                                 0x0
#define _SSPCON1_SSPM0_POSITION                             0x0
#define _SSPCON1_SSPM0_SIZE                                 0x1
#define _SSPCON1_SSPM0_LENGTH                               0x1
#define _SSPCON1_SSPM0_MASK                                 0x1
#define _SSPCON1_SSPM1_POSN                                 0x1
#define _SSPCON1_SSPM1_POSITION                             0x1
#define _SSPCON1_SSPM1_SIZE                                 0x1
#define _SSPCON1_SSPM1_LENGTH                               0x1
#define _SSPCON1_SSPM1_MASK                                 0x2
#define _SSPCON1_SSPM2_POSN                                 0x2
#define _SSPCON1_SSPM2_POSITION                             0x2
#define _SSPCON1_SSPM2_SIZE                                 0x1
#define _SSPCON1_SSPM2_LENGTH                               0x1
#define _SSPCON1_SSPM2_MASK                                 0x4
#define _SSPCON1_SSPM3_POSN                                 0x3
#define _SSPCON1_SSPM3_POSITION                             0x3
#define _SSPCON1_SSPM3_SIZE                                 0x1
#define _SSPCON1_SSPM3_LENGTH                               0x1
#define _SSPCON1_SSPM3_MASK                                 0x8
#define _SSPCON1_SSPM01_POSN                                0x0
#define _SSPCON1_SSPM01_POSITION                            0x0
#define _SSPCON1_SSPM01_SIZE                                0x1
#define _SSPCON1_SSPM01_LENGTH                              0x1
#define _SSPCON1_SSPM01_MASK                                0x1
#define _SSPCON1_SSPM11_POSN                                0x1
#define _SSPCON1_SSPM11_POSITION                            0x1
#define _SSPCON1_SSPM11_SIZE                                0x1
#define _SSPCON1_SSPM11_LENGTH                              0x1
#define _SSPCON1_SSPM11_MASK                                0x2
#define _SSPCON1_SSPM21_POSN                                0x2
#define _SSPCON1_SSPM21_POSITION                            0x2
#define _SSPCON1_SSPM21_SIZE                                0x1
#define _SSPCON1_SSPM21_LENGTH                              0x1
#define _SSPCON1_SSPM21_MASK                                0x4
#define _SSPCON1_SSPM31_POSN                                0x3
#define _SSPCON1_SSPM31_POSITION                            0x3
#define _SSPCON1_SSPM31_SIZE                                0x1
#define _SSPCON1_SSPM31_LENGTH                              0x1
#define _SSPCON1_SSPM31_MASK                                0x8
#define _SSPCON1_CKP1_POSN                                  0x4
#define _SSPCON1_CKP1_POSITION                              0x4
#define _SSPCON1_CKP1_SIZE                                  0x1
#define _SSPCON1_CKP1_LENGTH                                0x1
#define _SSPCON1_CKP1_MASK                                  0x10
#define _SSPCON1_SSPEN1_POSN                                0x5
#define _SSPCON1_SSPEN1_POSITION                            0x5
#define _SSPCON1_SSPEN1_SIZE                                0x1
#define _SSPCON1_SSPEN1_LENGTH                              0x1
#define _SSPCON1_SSPEN1_MASK                                0x20
#define _SSPCON1_SSPOV1_POSN                                0x6
#define _SSPCON1_SSPOV1_POSITION                            0x6
#define _SSPCON1_SSPOV1_SIZE                                0x1
#define _SSPCON1_SSPOV1_LENGTH                              0x1
#define _SSPCON1_SSPOV1_MASK                                0x40
#define _SSPCON1_WCOL1_POSN                                 0x7
#define _SSPCON1_WCOL1_POSITION                             0x7
#define _SSPCON1_WCOL1_SIZE                                 0x1
#define _SSPCON1_WCOL1_LENGTH                               0x1
#define _SSPCON1_WCOL1_MASK                                 0x80

// Register: SSP1STAT
extern volatile unsigned char           SSP1STAT            @ 0xFC7;
#ifndef _LIB_BUILD
asm("SSP1STAT equ 0FC7h");
#endif
// aliases
extern volatile unsigned char           SSPSTAT             @ 0xFC7;
#ifndef _LIB_BUILD
asm("SSPSTAT equ 0FC7h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned                        :2;
        unsigned R_NOT_W                :1;
    };
    struct {
        unsigned                        :5;
        unsigned D_NOT_A                :1;
    };
    struct {
        unsigned BF                     :1;
        unsigned UA                     :1;
        unsigned R_nW                   :1;
        unsigned S                      :1;
        unsigned P                      :1;
        unsigned D_nA                   :1;
        unsigned CKE                    :1;
        unsigned SMP                    :1;
    };
    struct {
        unsigned                        :2;
        unsigned R                      :1;
        unsigned                        :2;
        unsigned D                      :1;
    };
    struct {
        unsigned                        :2;
        unsigned W                      :1;
        unsigned                        :2;
        unsigned A                      :1;
    };
    struct {
        unsigned                        :2;
        unsigned nW                     :1;
        unsigned                        :2;
        unsigned nA                     :1;
    };
    struct {
        unsigned                        :2;
        unsigned R_W                    :1;
        unsigned                        :2;
        unsigned D_A                    :1;
    };
    struct {
        unsigned                        :2;
        unsigned NOT_WRITE              :1;
    };
    struct {
        unsigned                        :5;
        unsigned NOT_ADDRESS            :1;
    };
    struct {
        unsigned                        :2;
        unsigned nWRITE                 :1;
        unsigned                        :2;
        unsigned nADDRESS               :1;
    };
    struct {
        unsigned BF1                    :1;
        unsigned UA1                    :1;
        unsigned I2C_READ               :1;
        unsigned I2C_START              :1;
        unsigned I2C_STOP               :1;
        unsigned DA                     :1;
        unsigned CKE1                   :1;
        unsigned SMP1                   :1;
    };
    struct {
        unsigned                        :2;
        unsigned READ_WRITE             :1;
        unsigned START                  :1;
        unsigned STOP                   :1;
        unsigned DA1                    :1;
    };
    struct {
        unsigned                        :2;
        unsigned RW                     :1;
        unsigned START1                 :1;
        unsigned STOP1                  :1;
        unsigned DATA_ADDRESS           :1;
    };
    struct {
        unsigned                        :2;
        unsigned RW1                    :1;
        unsigned                        :2;
        unsigned I2C_DAT                :1;
    };
    struct {
        unsigned                        :2;
        unsigned NOT_W                  :1;
    };
    struct {
        unsigned                        :5;
        unsigned NOT_A                  :1;
    };
} SSP1STATbits_t;
extern volatile SSP1STATbits_t SSP1STATbits @ 0xFC7;
// bitfield macros
#define _SSP1STAT_R_NOT_W_POSN                              0x2
#define _SSP1STAT_R_NOT_W_POSITION                          0x2
#define _SSP1STAT_R_NOT_W_SIZE                              0x1
#define _SSP1STAT_R_NOT_W_LENGTH                            0x1
#define _SSP1STAT_R_NOT_W_MASK                              0x4
#define _SSP1STAT_D_NOT_A_POSN                              0x5
#define _SSP1STAT_D_NOT_A_POSITION                          0x5
#define _SSP1STAT_D_NOT_A_SIZE                              0x1
#define _SSP1STAT_D_NOT_A_LENGTH                            0x1
#define _SSP1STAT_D_NOT_A_MASK                              0x20
#define _SSP1STAT_BF_POSN                                   0x0
#define _SSP1STAT_BF_POSITION                               0x0
#define _SSP1STAT_BF_SIZE                                   0x1
#define _SSP1STAT_BF_LENGTH                                 0x1
#define _SSP1STAT_BF_MASK                                   0x1
#define _SSP1STAT_UA_POSN                                   0x1
#define _SSP1STAT_UA_POSITION                               0x1
#define _SSP1STAT_UA_SIZE                                   0x1
#define _SSP1STAT_UA_LENGTH                                 0x1
#define _SSP1STAT_UA_MASK                                   0x2
#define _SSP1STAT_R_nW_POSN                                 0x2
#define _SSP1STAT_R_nW_POSITION                             0x2
#define _SSP1STAT_R_nW_SIZE                                 0x1
#define _SSP1STAT_R_nW_LENGTH                               0x1
#define _SSP1STAT_R_nW_MASK                                 0x4
#define _SSP1STAT_S_POSN                                    0x3
#define _SSP1STAT_S_POSITION                                0x3
#define _SSP1STAT_S_SIZE                                    0x1
#define _SSP1STAT_S_LENGTH                                  0x1
#define _SSP1STAT_S_MASK                                    0x8
#define _SSP1STAT_P_POSN                                    0x4
#define _SSP1STAT_P_POSITION                                0x4
#define _SSP1STAT_P_SIZE                                    0x1
#define _SSP1STAT_P_LENGTH                                  0x1
#define _SSP1STAT_P_MASK                                    0x10
#define _SSP1STAT_D_nA_POSN                                 0x5
#define _SSP1STAT_D_nA_POSITION                             0x5
#define _SSP1STAT_D_nA_SIZE                                 0x1
#define _SSP1STAT_D_nA_LENGTH                               0x1
#define _SSP1STAT_D_nA_MASK                                 0x20
#define _SSP1STAT_CKE_POSN                                  0x6
#define _SSP1STAT_CKE_POSITION                              0x6
#define _SSP1STAT_CKE_SIZE                                  0x1
#define _SSP1STAT_CKE_LENGTH                                0x1
#define _SSP1STAT_CKE_MASK                                  0x40
#define _SSP1STAT_SMP_POSN                                  0x7
#define _SSP1STAT_SMP_POSITION                              0x7
#define _SSP1STAT_SMP_SIZE                                  0x1
#define _SSP1STAT_SMP_LENGTH                                0x1
#define _SSP1STAT_SMP_MASK                                  0x80
#define _SSP1STAT_R_POSN                                    0x2
#define _SSP1STAT_R_POSITION                                0x2
#define _SSP1STAT_R_SIZE                                    0x1
#define _SSP1STAT_R_LENGTH                                  0x1
#define _SSP1STAT_R_MASK                                    0x4
#define _SSP1STAT_D_POSN                                    0x5
#define _SSP1STAT_D_POSITION                                0x5
#define _SSP1STAT_D_SIZE                                    0x1
#define _SSP1STAT_D_LENGTH                                  0x1
#define _SSP1STAT_D_MASK                                    0x20
#define _SSP1STAT_W_POSN                                    0x2
#define _SSP1STAT_W_POSITION                                0x2
#define _SSP1STAT_W_SIZE                                    0x1
#define _SSP1STAT_W_LENGTH                                  0x1
#define _SSP1STAT_W_MASK                                    0x4
#define _SSP1STAT_A_POSN                                    0x5
#define _SSP1STAT_A_POSITION                                0x5
#define _SSP1STAT_A_SIZE                                    0x1
#define _SSP1STAT_A_LENGTH                                  0x1
#define _SSP1STAT_A_MASK                                    0x20
#define _SSP1STAT_nW_POSN                                   0x2
#define _SSP1STAT_nW_POSITION                               0x2
#define _SSP1STAT_nW_SIZE                                   0x1
#define _SSP1STAT_nW_LENGTH                                 0x1
#define _SSP1STAT_nW_MASK                                   0x4
#define _SSP1STAT_nA_POSN                                   0x5
#define _SSP1STAT_nA_POSITION                               0x5
#define _SSP1STAT_nA_SIZE                                   0x1
#define _SSP1STAT_nA_LENGTH                                 0x1
#define _SSP1STAT_nA_MASK                                   0x20
#define _SSP1STAT_R_W_POSN                                  0x2
#define _SSP1STAT_R_W_POSITION                              0x2
#define _SSP1STAT_R_W_SIZE                                  0x1
#define _SSP1STAT_R_W_LENGTH                                0x1
#define _SSP1STAT_R_W_MASK                                  0x4
#define _SSP1STAT_D_A_POSN                                  0x5
#define _SSP1STAT_D_A_POSITION                              0x5
#define _SSP1STAT_D_A_SIZE                                  0x1
#define _SSP1STAT_D_A_LENGTH                                0x1
#define _SSP1STAT_D_A_MASK                                  0x20
#define _SSP1STAT_NOT_WRITE_POSN                            0x2
#define _SSP1STAT_NOT_WRITE_POSITION                        0x2
#define _SSP1STAT_NOT_WRITE_SIZE                            0x1
#define _SSP1STAT_NOT_WRITE_LENGTH                          0x1
#define _SSP1STAT_NOT_WRITE_MASK                            0x4
#define _SSP1STAT_NOT_ADDRESS_POSN                          0x5
#define _SSP1STAT_NOT_ADDRESS_POSITION                      0x5
#define _SSP1STAT_NOT_ADDRESS_SIZE                          0x1
#define _SSP1STAT_NOT_ADDRESS_LENGTH                        0x1
#define _SSP1STAT_NOT_ADDRESS_MASK                          0x20
#define _SSP1STAT_nWRITE_POSN                               0x2
#define _SSP1STAT_nWRITE_POSITION                           0x2
#define _SSP1STAT_nWRITE_SIZE                               0x1
#define _SSP1STAT_nWRITE_LENGTH                             0x1
#define _SSP1STAT_nWRITE_MASK                               0x4
#define _SSP1STAT_nADDRESS_POSN                             0x5
#define _SSP1STAT_nADDRESS_POSITION                         0x5
#define _SSP1STAT_nADDRESS_SIZE                             0x1
#define _SSP1STAT_nADDRESS_LENGTH                           0x1
#define _SSP1STAT_nADDRESS_MASK                             0x20
#define _SSP1STAT_BF1_POSN                                  0x0
#define _SSP1STAT_BF1_POSITION                              0x0
#define _SSP1STAT_BF1_SIZE                                  0x1
#define _SSP1STAT_BF1_LENGTH                                0x1
#define _SSP1STAT_BF1_MASK                                  0x1
#define _SSP1STAT_UA1_POSN                                  0x1
#define _SSP1STAT_UA1_POSITION                              0x1
#define _SSP1STAT_UA1_SIZE                                  0x1
#define _SSP1STAT_UA1_LENGTH                                0x1
#define _SSP1STAT_UA1_MASK                                  0x2
#define _SSP1STAT_I2C_READ_POSN                             0x2
#define _SSP1STAT_I2C_READ_POSITION                         0x2
#define _SSP1STAT_I2C_READ_SIZE                             0x1
#define _SSP1STAT_I2C_READ_LENGTH                           0x1
#define _SSP1STAT_I2C_READ_MASK                             0x4
#define _SSP1STAT_I2C_START_POSN                            0x3
#define _SSP1STAT_I2C_START_POSITION                        0x3
#define _SSP1STAT_I2C_START_SIZE                            0x1
#define _SSP1STAT_I2C_START_LENGTH                          0x1
#define _SSP1STAT_I2C_START_MASK                            0x8
#define _SSP1STAT_I2C_STOP_POSN                             0x4
#define _SSP1STAT_I2C_STOP_POSITION                         0x4
#define _SSP1STAT_I2C_STOP_SIZE                             0x1
#define _SSP1STAT_I2C_STOP_LENGTH                           0x1
#define _SSP1STAT_I2C_STOP_MASK                             0x10
#define _SSP1STAT_DA_POSN                                   0x5
#define _SSP1STAT_DA_POSITION                               0x5
#define _SSP1STAT_DA_SIZE                                   0x1
#define _SSP1STAT_DA_LENGTH                                 0x1
#define _SSP1STAT_DA_MASK                                   0x20
#define _SSP1STAT_CKE1_POSN                                 0x6
#define _SSP1STAT_CKE1_POSITION                             0x6
#define _SSP1STAT_CKE1_SIZE                                 0x1
#define _SSP1STAT_CKE1_LENGTH                               0x1
#define _SSP1STAT_CKE1_MASK                                 0x40
#define _SSP1STAT_SMP1_POSN                                 0x7
#define _SSP1STAT_SMP1_POSITION                             0x7
#define _SSP1STAT_SMP1_SIZE                                 0x1
#define _SSP1STAT_SMP1_LENGTH                               0x1
#define _SSP1STAT_SMP1_MASK                                 0x80
#define _SSP1STAT_READ_WRITE_POSN                           0x2
#define _SSP1STAT_READ_WRITE_POSITION                       0x2
#define _SSP1STAT_READ_WRITE_SIZE                           0x1
#define _SSP1STAT_READ_WRITE_LENGTH                         0x1
#define _SSP1STAT_READ_WRITE_MASK                           0x4
#define _SSP1STAT_START_POSN                                0x3
#define _SSP1STAT_START_POSITION                            0x3
#define _SSP1STAT_START_SIZE                                0x1
#define _SSP1STAT_START_LENGTH                              0x1
#define _SSP1STAT_START_MASK                                0x8
#define _SSP1STAT_STOP_POSN                                 0x4
#define _SSP1STAT_STOP_POSITION                             0x4
#define _SSP1STAT_STOP_SIZE                                 0x1
#define _SSP1STAT_STOP_LENGTH                               0x1
#define _SSP1STAT_STOP_MASK                                 0x10
#define _SSP1STAT_DA1_POSN                                  0x5
#define _SSP1STAT_DA1_POSITION                              0x5
#define _SSP1STAT_DA1_SIZE                                  0x1
#define _SSP1STAT_DA1_LENGTH                                0x1
#define _SSP1STAT_DA1_MASK                                  0x20
#define _SSP1STAT_RW_POSN                                   0x2
#define _SSP1STAT_RW_POSITION                               0x2
#define _SSP1STAT_RW_SIZE                                   0x1
#define _SSP1STAT_RW_LENGTH                                 0x1
#define _SSP1STAT_RW_MASK                                   0x4
#define _SSP1STAT_START1_POSN                               0x3
#define _SSP1STAT_START1_POSITION                           0x3
#define _SSP1STAT_START1_SIZE                               0x1
#define _SSP1STAT_START1_LENGTH                             0x1
#define _SSP1STAT_START1_MASK                               0x8
#define _SSP1STAT_STOP1_POSN                                0x4
#define _SSP1STAT_STOP1_POSITION                            0x4
#define _SSP1STAT_STOP1_SIZE                                0x1
#define _SSP1STAT_STOP1_LENGTH                              0x1
#define _SSP1STAT_STOP1_MASK                                0x10
#define _SSP1STAT_DATA_ADDRESS_POSN                         0x5
#define _SSP1STAT_DATA_ADDRESS_POSITION                     0x5
#define _SSP1STAT_DATA_ADDRESS_SIZE                         0x1
#define _SSP1STAT_DATA_ADDRESS_LENGTH                       0x1
#define _SSP1STAT_DATA_ADDRESS_MASK                         0x20
#define _SSP1STAT_RW1_POSN                                  0x2
#define _SSP1STAT_RW1_POSITION                              0x2
#define _SSP1STAT_RW1_SIZE                                  0x1
#define _SSP1STAT_RW1_LENGTH                                0x1
#define _SSP1STAT_RW1_MASK                                  0x4
#define _SSP1STAT_I2C_DAT_POSN                              0x5
#define _SSP1STAT_I2C_DAT_POSITION                          0x5
#define _SSP1STAT_I2C_DAT_SIZE                              0x1
#define _SSP1STAT_I2C_DAT_LENGTH                            0x1
#define _SSP1STAT_I2C_DAT_MASK                              0x20
#define _SSP1STAT_NOT_W_POSN                                0x2
#define _SSP1STAT_NOT_W_POSITION                            0x2
#define _SSP1STAT_NOT_W_SIZE                                0x1
#define _SSP1STAT_NOT_W_LENGTH                              0x1
#define _SSP1STAT_NOT_W_MASK                                0x4
#define _SSP1STAT_NOT_A_POSN                                0x5
#define _SSP1STAT_NOT_A_POSITION                            0x5
#define _SSP1STAT_NOT_A_SIZE                                0x1
#define _SSP1STAT_NOT_A_LENGTH                              0x1
#define _SSP1STAT_NOT_A_MASK                                0x20
// alias bitfield definitions
typedef union {
    struct {
        unsigned                        :2;
        unsigned R_NOT_W                :1;
    };
    struct {
        unsigned                        :5;
        unsigned D_NOT_A                :1;
    };
    struct {
        unsigned BF                     :1;
        unsigned UA                     :1;
        unsigned R_nW                   :1;
        unsigned S                      :1;
        unsigned P                      :1;
        unsigned D_nA                   :1;
        unsigned CKE                    :1;
        unsigned SMP                    :1;
    };
    struct {
        unsigned                        :2;
        unsigned R                      :1;
        unsigned                        :2;
        unsigned D                      :1;
    };
    struct {
        unsigned                        :2;
        unsigned W                      :1;
        unsigned                        :2;
        unsigned A                      :1;
    };
    struct {
        unsigned                        :2;
        unsigned nW                     :1;
        unsigned                        :2;
        unsigned nA                     :1;
    };
    struct {
        unsigned                        :2;
        unsigned R_W                    :1;
        unsigned                        :2;
        unsigned D_A                    :1;
    };
    struct {
        unsigned                        :2;
        unsigned NOT_WRITE              :1;
    };
    struct {
        unsigned                        :5;
        unsigned NOT_ADDRESS            :1;
    };
    struct {
        unsigned                        :2;
        unsigned nWRITE                 :1;
        unsigned                        :2;
        unsigned nADDRESS               :1;
    };
    struct {
        unsigned BF1                    :1;
        unsigned UA1                    :1;
        unsigned I2C_READ               :1;
        unsigned I2C_START              :1;
        unsigned I2C_STOP               :1;
        unsigned DA                     :1;
        unsigned CKE1                   :1;
        unsigned SMP1                   :1;
    };
    struct {
        unsigned                        :2;
        unsigned READ_WRITE             :1;
        unsigned START                  :1;
        unsigned STOP                   :1;
        unsigned DA1                    :1;
    };
    struct {
        unsigned                        :2;
        unsigned RW                     :1;
        unsigned START1                 :1;
        unsigned STOP1                  :1;
        unsigned DATA_ADDRESS           :1;
    };
    struct {
        unsigned                        :2;
        unsigned RW1                    :1;
        unsigned                        :2;
        unsigned I2C_DAT                :1;
    };
    struct {
        unsigned                        :2;
        unsigned NOT_W                  :1;
    };
    struct {
        unsigned                        :5;
        unsigned NOT_A                  :1;
    };
} SSPSTATbits_t;
extern volatile SSPSTATbits_t SSPSTATbits @ 0xFC7;
// bitfield macros
#define _SSPSTAT_R_NOT_W_POSN                               0x2
#define _SSPSTAT_R_NOT_W_POSITION                           0x2
#define _SSPSTAT_R_NOT_W_SIZE                               0x1
#define _SSPSTAT_R_NOT_W_LENGTH                             0x1
#define _SSPSTAT_R_NOT_W_MASK                               0x4
#define _SSPSTAT_D_NOT_A_POSN                               0x5
#define _SSPSTAT_D_NOT_A_POSITION                           0x5
#define _SSPSTAT_D_NOT_A_SIZE                               0x1
#define _SSPSTAT_D_NOT_A_LENGTH                             0x1
#define _SSPSTAT_D_NOT_A_MASK                               0x20
#define _SSPSTAT_BF_POSN                                    0x0
#define _SSPSTAT_BF_POSITION                                0x0
#define _SSPSTAT_BF_SIZE                                    0x1
#define _SSPSTAT_BF_LENGTH                                  0x1
#define _SSPSTAT_BF_MASK                                    0x1
#define _SSPSTAT_UA_POSN                                    0x1
#define _SSPSTAT_UA_POSITION                                0x1
#define _SSPSTAT_UA_SIZE                                    0x1
#define _SSPSTAT_UA_LENGTH                                  0x1
#define _SSPSTAT_UA_MASK                                    0x2
#define _SSPSTAT_R_nW_POSN                                  0x2
#define _SSPSTAT_R_nW_POSITION                              0x2
#define _SSPSTAT_R_nW_SIZE                                  0x1
#define _SSPSTAT_R_nW_LENGTH                                0x1
#define _SSPSTAT_R_nW_MASK                                  0x4
#define _SSPSTAT_S_POSN                                     0x3
#define _SSPSTAT_S_POSITION                                 0x3
#define _SSPSTAT_S_SIZE                                     0x1
#define _SSPSTAT_S_LENGTH                                   0x1
#define _SSPSTAT_S_MASK                                     0x8
#define _SSPSTAT_P_POSN                                     0x4
#define _SSPSTAT_P_POSITION                                 0x4
#define _SSPSTAT_P_SIZE                                     0x1
#define _SSPSTAT_P_LENGTH                                   0x1
#define _SSPSTAT_P_MASK                                     0x10
#define _SSPSTAT_D_nA_POSN                                  0x5
#define _SSPSTAT_D_nA_POSITION                              0x5
#define _SSPSTAT_D_nA_SIZE                                  0x1
#define _SSPSTAT_D_nA_LENGTH                                0x1
#define _SSPSTAT_D_nA_MASK                                  0x20
#define _SSPSTAT_CKE_POSN                                   0x6
#define _SSPSTAT_CKE_POSITION                               0x6
#define _SSPSTAT_CKE_SIZE                                   0x1
#define _SSPSTAT_CKE_LENGTH                                 0x1
#define _SSPSTAT_CKE_MASK                                   0x40
#define _SSPSTAT_SMP_POSN                                   0x7
#define _SSPSTAT_SMP_POSITION                               0x7
#define _SSPSTAT_SMP_SIZE                                   0x1
#define _SSPSTAT_SMP_LENGTH                                 0x1
#define _SSPSTAT_SMP_MASK                                   0x80
#define _SSPSTAT_R_POSN                                     0x2
#define _SSPSTAT_R_POSITION                                 0x2
#define _SSPSTAT_R_SIZE                                     0x1
#define _SSPSTAT_R_LENGTH                                   0x1
#define _SSPSTAT_R_MASK                                     0x4
#define _SSPSTAT_D_POSN                                     0x5
#define _SSPSTAT_D_POSITION                                 0x5
#define _SSPSTAT_D_SIZE                                     0x1
#define _SSPSTAT_D_LENGTH                                   0x1
#define _SSPSTAT_D_MASK                                     0x20
#define _SSPSTAT_W_POSN                                     0x2
#define _SSPSTAT_W_POSITION                                 0x2
#define _SSPSTAT_W_SIZE                                     0x1
#define _SSPSTAT_W_LENGTH                                   0x1
#define _SSPSTAT_W_MASK                                     0x4
#define _SSPSTAT_A_POSN                                     0x5
#define _SSPSTAT_A_POSITION                                 0x5
#define _SSPSTAT_A_SIZE                                     0x1
#define _SSPSTAT_A_LENGTH                                   0x1
#define _SSPSTAT_A_MASK                                     0x20
#define _SSPSTAT_nW_POSN                                    0x2
#define _SSPSTAT_nW_POSITION                                0x2
#define _SSPSTAT_nW_SIZE                                    0x1
#define _SSPSTAT_nW_LENGTH                                  0x1
#define _SSPSTAT_nW_MASK                                    0x4
#define _SSPSTAT_nA_POSN                                    0x5
#define _SSPSTAT_nA_POSITION                                0x5
#define _SSPSTAT_nA_SIZE                                    0x1
#define _SSPSTAT_nA_LENGTH                                  0x1
#define _SSPSTAT_nA_MASK                                    0x20
#define _SSPSTAT_R_W_POSN                                   0x2
#define _SSPSTAT_R_W_POSITION                               0x2
#define _SSPSTAT_R_W_SIZE                                   0x1
#define _SSPSTAT_R_W_LENGTH                                 0x1
#define _SSPSTAT_R_W_MASK                                   0x4
#define _SSPSTAT_D_A_POSN                                   0x5
#define _SSPSTAT_D_A_POSITION                               0x5
#define _SSPSTAT_D_A_SIZE                                   0x1
#define _SSPSTAT_D_A_LENGTH                                 0x1
#define _SSPSTAT_D_A_MASK                                   0x20
#define _SSPSTAT_NOT_WRITE_POSN                             0x2
#define _SSPSTAT_NOT_WRITE_POSITION                         0x2
#define _SSPSTAT_NOT_WRITE_SIZE                             0x1
#define _SSPSTAT_NOT_WRITE_LENGTH                           0x1
#define _SSPSTAT_NOT_WRITE_MASK                             0x4
#define _SSPSTAT_NOT_ADDRESS_POSN                           0x5
#define _SSPSTAT_NOT_ADDRESS_POSITION                       0x5
#define _SSPSTAT_NOT_ADDRESS_SIZE                           0x1
#define _SSPSTAT_NOT_ADDRESS_LENGTH                         0x1
#define _SSPSTAT_NOT_ADDRESS_MASK                           0x20
#define _SSPSTAT_nWRITE_POSN                                0x2
#define _SSPSTAT_nWRITE_POSITION                            0x2
#define _SSPSTAT_nWRITE_SIZE                                0x1
#define _SSPSTAT_nWRITE_LENGTH                              0x1
#define _SSPSTAT_nWRITE_MASK                                0x4
#define _SSPSTAT_nADDRESS_POSN                              0x5
#define _SSPSTAT_nADDRESS_POSITION                          0x5
#define _SSPSTAT_nADDRESS_SIZE                              0x1
#define _SSPSTAT_nADDRESS_LENGTH                            0x1
#define _SSPSTAT_nADDRESS_MASK                              0x20
#define _SSPSTAT_BF1_POSN                                   0x0
#define _SSPSTAT_BF1_POSITION                               0x0
#define _SSPSTAT_BF1_SIZE                                   0x1
#define _SSPSTAT_BF1_LENGTH                                 0x1
#define _SSPSTAT_BF1_MASK                                   0x1
#define _SSPSTAT_UA1_POSN                                   0x1
#define _SSPSTAT_UA1_POSITION                               0x1
#define _SSPSTAT_UA1_SIZE                                   0x1
#define _SSPSTAT_UA1_LENGTH                                 0x1
#define _SSPSTAT_UA1_MASK                                   0x2
#define _SSPSTAT_I2C_READ_POSN                              0x2
#define _SSPSTAT_I2C_READ_POSITION                          0x2
#define _SSPSTAT_I2C_READ_SIZE                              0x1
#define _SSPSTAT_I2C_READ_LENGTH                            0x1
#define _SSPSTAT_I2C_READ_MASK                              0x4
#define _SSPSTAT_I2C_START_POSN                             0x3
#define _SSPSTAT_I2C_START_POSITION                         0x3
#define _SSPSTAT_I2C_START_SIZE                             0x1
#define _SSPSTAT_I2C_START_LENGTH                           0x1
#define _SSPSTAT_I2C_START_MASK                             0x8
#define _SSPSTAT_I2C_STOP_POSN                              0x4
#define _SSPSTAT_I2C_STOP_POSITION                          0x4
#define _SSPSTAT_I2C_STOP_SIZE                              0x1
#define _SSPSTAT_I2C_STOP_LENGTH                            0x1
#define _SSPSTAT_I2C_STOP_MASK                              0x10
#define _SSPSTAT_DA_POSN                                    0x5
#define _SSPSTAT_DA_POSITION                                0x5
#define _SSPSTAT_DA_SIZE                                    0x1
#define _SSPSTAT_DA_LENGTH                                  0x1
#define _SSPSTAT_DA_MASK                                    0x20
#define _SSPSTAT_CKE1_POSN                                  0x6
#define _SSPSTAT_CKE1_POSITION                              0x6
#define _SSPSTAT_CKE1_SIZE                                  0x1
#define _SSPSTAT_CKE1_LENGTH                                0x1
#define _SSPSTAT_CKE1_MASK                                  0x40
#define _SSPSTAT_SMP1_POSN                                  0x7
#define _SSPSTAT_SMP1_POSITION                              0x7
#define _SSPSTAT_SMP1_SIZE                                  0x1
#define _SSPSTAT_SMP1_LENGTH                                0x1
#define _SSPSTAT_SMP1_MASK                                  0x80
#define _SSPSTAT_READ_WRITE_POSN                            0x2
#define _SSPSTAT_READ_WRITE_POSITION                        0x2
#define _SSPSTAT_READ_WRITE_SIZE                            0x1
#define _SSPSTAT_READ_WRITE_LENGTH                          0x1
#define _SSPSTAT_READ_WRITE_MASK                            0x4
#define _SSPSTAT_START_POSN                                 0x3
#define _SSPSTAT_START_POSITION                             0x3
#define _SSPSTAT_START_SIZE                                 0x1
#define _SSPSTAT_START_LENGTH                               0x1
#define _SSPSTAT_START_MASK                                 0x8
#define _SSPSTAT_STOP_POSN                                  0x4
#define _SSPSTAT_STOP_POSITION                              0x4
#define _SSPSTAT_STOP_SIZE                                  0x1
#define _SSPSTAT_STOP_LENGTH                                0x1
#define _SSPSTAT_STOP_MASK                                  0x10
#define _SSPSTAT_DA1_POSN                                   0x5
#define _SSPSTAT_DA1_POSITION                               0x5
#define _SSPSTAT_DA1_SIZE                                   0x1
#define _SSPSTAT_DA1_LENGTH                                 0x1
#define _SSPSTAT_DA1_MASK                                   0x20
#define _SSPSTAT_RW_POSN                                    0x2
#define _SSPSTAT_RW_POSITION                                0x2
#define _SSPSTAT_RW_SIZE                                    0x1
#define _SSPSTAT_RW_LENGTH                                  0x1
#define _SSPSTAT_RW_MASK                                    0x4
#define _SSPSTAT_START1_POSN                                0x3
#define _SSPSTAT_START1_POSITION                            0x3
#define _SSPSTAT_START1_SIZE                                0x1
#define _SSPSTAT_START1_LENGTH                              0x1
#define _SSPSTAT_START1_MASK                                0x8
#define _SSPSTAT_STOP1_POSN                                 0x4
#define _SSPSTAT_STOP1_POSITION                             0x4
#define _SSPSTAT_STOP1_SIZE                                 0x1
#define _SSPSTAT_STOP1_LENGTH                               0x1
#define _SSPSTAT_STOP1_MASK                                 0x10
#define _SSPSTAT_DATA_ADDRESS_POSN                          0x5
#define _SSPSTAT_DATA_ADDRESS_POSITION                      0x5
#define _SSPSTAT_DATA_ADDRESS_SIZE                          0x1
#define _SSPSTAT_DATA_ADDRESS_LENGTH                        0x1
#define _SSPSTAT_DATA_ADDRESS_MASK                          0x20
#define _SSPSTAT_RW1_POSN                                   0x2
#define _SSPSTAT_RW1_POSITION                               0x2
#define _SSPSTAT_RW1_SIZE                                   0x1
#define _SSPSTAT_RW1_LENGTH                                 0x1
#define _SSPSTAT_RW1_MASK                                   0x4
#define _SSPSTAT_I2C_DAT_POSN                               0x5
#define _SSPSTAT_I2C_DAT_POSITION                           0x5
#define _SSPSTAT_I2C_DAT_SIZE                               0x1
#define _SSPSTAT_I2C_DAT_LENGTH                             0x1
#define _SSPSTAT_I2C_DAT_MASK                               0x20
#define _SSPSTAT_NOT_W_POSN                                 0x2
#define _SSPSTAT_NOT_W_POSITION                             0x2
#define _SSPSTAT_NOT_W_SIZE                                 0x1
#define _SSPSTAT_NOT_W_LENGTH                               0x1
#define _SSPSTAT_NOT_W_MASK                                 0x4
#define _SSPSTAT_NOT_A_POSN                                 0x5
#define _SSPSTAT_NOT_A_POSITION                             0x5
#define _SSPSTAT_NOT_A_SIZE                                 0x1
#define _SSPSTAT_NOT_A_LENGTH                               0x1
#define _SSPSTAT_NOT_A_MASK                                 0x20

// Register: SSP1ADD
extern volatile unsigned char           SSP1ADD             @ 0xFC8;
#ifndef _LIB_BUILD
asm("SSP1ADD equ 0FC8h");
#endif
// aliases
extern volatile unsigned char           SSPADD              @ 0xFC8;
#ifndef _LIB_BUILD
asm("SSPADD equ 0FC8h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned SSPADD                 :8;
    };
    struct {
        unsigned SSP1ADD                :8;
    };
    struct {
        unsigned MSK0                   :1;
        unsigned MSK1                   :1;
        unsigned MSK2                   :1;
        unsigned MSK3                   :1;
        unsigned MSK4                   :1;
        unsigned MSK5                   :1;
        unsigned MSK6                   :1;
        unsigned MSK7                   :1;
    };
    struct {
        unsigned MSK01                  :1;
        unsigned MSK11                  :1;
        unsigned MSK21                  :1;
        unsigned MSK31                  :1;
        unsigned MSK41                  :1;
        unsigned MSK51                  :1;
        unsigned MSK61                  :1;
        unsigned MSK71                  :1;
    };
} SSP1ADDbits_t;
extern volatile SSP1ADDbits_t SSP1ADDbits @ 0xFC8;
// bitfield macros
#define _SSP1ADD_SSPADD_POSN                                0x0
#define _SSP1ADD_SSPADD_POSITION                            0x0
#define _SSP1ADD_SSPADD_SIZE                                0x8
#define _SSP1ADD_SSPADD_LENGTH                              0x8
#define _SSP1ADD_SSPADD_MASK                                0xFF
#define _SSP1ADD_SSP1ADD_POSN                               0x0
#define _SSP1ADD_SSP1ADD_POSITION                           0x0
#define _SSP1ADD_SSP1ADD_SIZE                               0x8
#define _SSP1ADD_SSP1ADD_LENGTH                             0x8
#define _SSP1ADD_SSP1ADD_MASK                               0xFF
#define _SSP1ADD_MSK0_POSN                                  0x0
#define _SSP1ADD_MSK0_POSITION                              0x0
#define _SSP1ADD_MSK0_SIZE                                  0x1
#define _SSP1ADD_MSK0_LENGTH                                0x1
#define _SSP1ADD_MSK0_MASK                                  0x1
#define _SSP1ADD_MSK1_POSN                                  0x1
#define _SSP1ADD_MSK1_POSITION                              0x1
#define _SSP1ADD_MSK1_SIZE                                  0x1
#define _SSP1ADD_MSK1_LENGTH                                0x1
#define _SSP1ADD_MSK1_MASK                                  0x2
#define _SSP1ADD_MSK2_POSN                                  0x2
#define _SSP1ADD_MSK2_POSITION                              0x2
#define _SSP1ADD_MSK2_SIZE                                  0x1
#define _SSP1ADD_MSK2_LENGTH                                0x1
#define _SSP1ADD_MSK2_MASK                                  0x4
#define _SSP1ADD_MSK3_POSN                                  0x3
#define _SSP1ADD_MSK3_POSITION                              0x3
#define _SSP1ADD_MSK3_SIZE                                  0x1
#define _SSP1ADD_MSK3_LENGTH                                0x1
#define _SSP1ADD_MSK3_MASK                                  0x8
#define _SSP1ADD_MSK4_POSN                                  0x4
#define _SSP1ADD_MSK4_POSITION                              0x4
#define _SSP1ADD_MSK4_SIZE                                  0x1
#define _SSP1ADD_MSK4_LENGTH                                0x1
#define _SSP1ADD_MSK4_MASK                                  0x10
#define _SSP1ADD_MSK5_POSN                                  0x5
#define _SSP1ADD_MSK5_POSITION                              0x5
#define _SSP1ADD_MSK5_SIZE                                  0x1
#define _SSP1ADD_MSK5_LENGTH                                0x1
#define _SSP1ADD_MSK5_MASK                                  0x20
#define _SSP1ADD_MSK6_POSN                                  0x6
#define _SSP1ADD_MSK6_POSITION                              0x6
#define _SSP1ADD_MSK6_SIZE                                  0x1
#define _SSP1ADD_MSK6_LENGTH                                0x1
#define _SSP1ADD_MSK6_MASK                                  0x40
#define _SSP1ADD_MSK7_POSN                                  0x7
#define _SSP1ADD_MSK7_POSITION                              0x7
#define _SSP1ADD_MSK7_SIZE                                  0x1
#define _SSP1ADD_MSK7_LENGTH                                0x1
#define _SSP1ADD_MSK7_MASK                                  0x80
#define _SSP1ADD_MSK01_POSN                                 0x0
#define _SSP1ADD_MSK01_POSITION                             0x0
#define _SSP1ADD_MSK01_SIZE                                 0x1
#define _SSP1ADD_MSK01_LENGTH                               0x1
#define _SSP1ADD_MSK01_MASK                                 0x1
#define _SSP1ADD_MSK11_POSN                                 0x1
#define _SSP1ADD_MSK11_POSITION                             0x1
#define _SSP1ADD_MSK11_SIZE                                 0x1
#define _SSP1ADD_MSK11_LENGTH                               0x1
#define _SSP1ADD_MSK11_MASK                                 0x2
#define _SSP1ADD_MSK21_POSN                                 0x2
#define _SSP1ADD_MSK21_POSITION                             0x2
#define _SSP1ADD_MSK21_SIZE                                 0x1
#define _SSP1ADD_MSK21_LENGTH                               0x1
#define _SSP1ADD_MSK21_MASK                                 0x4
#define _SSP1ADD_MSK31_POSN                                 0x3
#define _SSP1ADD_MSK31_POSITION                             0x3
#define _SSP1ADD_MSK31_SIZE                                 0x1
#define _SSP1ADD_MSK31_LENGTH                               0x1
#define _SSP1ADD_MSK31_MASK                                 0x8
#define _SSP1ADD_MSK41_POSN                                 0x4
#define _SSP1ADD_MSK41_POSITION                             0x4
#define _SSP1ADD_MSK41_SIZE                                 0x1
#define _SSP1ADD_MSK41_LENGTH                               0x1
#define _SSP1ADD_MSK41_MASK                                 0x10
#define _SSP1ADD_MSK51_POSN                                 0x5
#define _SSP1ADD_MSK51_POSITION                             0x5
#define _SSP1ADD_MSK51_SIZE                                 0x1
#define _SSP1ADD_MSK51_LENGTH                               0x1
#define _SSP1ADD_MSK51_MASK                                 0x20
#define _SSP1ADD_MSK61_POSN                                 0x6
#define _SSP1ADD_MSK61_POSITION                             0x6
#define _SSP1ADD_MSK61_SIZE                                 0x1
#define _SSP1ADD_MSK61_LENGTH                               0x1
#define _SSP1ADD_MSK61_MASK                                 0x40
#define _SSP1ADD_MSK71_POSN                                 0x7
#define _SSP1ADD_MSK71_POSITION                             0x7
#define _SSP1ADD_MSK71_SIZE                                 0x1
#define _SSP1ADD_MSK71_LENGTH                               0x1
#define _SSP1ADD_MSK71_MASK                                 0x80
// alias bitfield definitions
typedef union {
    struct {
        unsigned SSPADD                 :8;
    };
    struct {
        unsigned SSP1ADD                :8;
    };
    struct {
        unsigned MSK0                   :1;
        unsigned MSK1                   :1;
        unsigned MSK2                   :1;
        unsigned MSK3                   :1;
        unsigned MSK4                   :1;
        unsigned MSK5                   :1;
        unsigned MSK6                   :1;
        unsigned MSK7                   :1;
    };
    struct {
        unsigned MSK01                  :1;
        unsigned MSK11                  :1;
        unsigned MSK21                  :1;
        unsigned MSK31                  :1;
        unsigned MSK41                  :1;
        unsigned MSK51                  :1;
        unsigned MSK61                  :1;
        unsigned MSK71                  :1;
    };
} SSPADDbits_t;
extern volatile SSPADDbits_t SSPADDbits @ 0xFC8;
// bitfield macros
#define _SSPADD_SSPADD_POSN                                 0x0
#define _SSPADD_SSPADD_POSITION                             0x0
#define _SSPADD_SSPADD_SIZE                                 0x8
#define _SSPADD_SSPADD_LENGTH                               0x8
#define _SSPADD_SSPADD_MASK                                 0xFF
#define _SSPADD_SSP1ADD_POSN                                0x0
#define _SSPADD_SSP1ADD_POSITION                            0x0
#define _SSPADD_SSP1ADD_SIZE                                0x8
#define _SSPADD_SSP1ADD_LENGTH                              0x8
#define _SSPADD_SSP1ADD_MASK                                0xFF
#define _SSPADD_MSK0_POSN                                   0x0
#define _SSPADD_MSK0_POSITION                               0x0
#define _SSPADD_MSK0_SIZE                                   0x1
#define _SSPADD_MSK0_LENGTH                                 0x1
#define _SSPADD_MSK0_MASK                                   0x1
#define _SSPADD_MSK1_POSN                                   0x1
#define _SSPADD_MSK1_POSITION                               0x1
#define _SSPADD_MSK1_SIZE                                   0x1
#define _SSPADD_MSK1_LENGTH                                 0x1
#define _SSPADD_MSK1_MASK                                   0x2
#define _SSPADD_MSK2_POSN                                   0x2
#define _SSPADD_MSK2_POSITION                               0x2
#define _SSPADD_MSK2_SIZE                                   0x1
#define _SSPADD_MSK2_LENGTH                                 0x1
#define _SSPADD_MSK2_MASK                                   0x4
#define _SSPADD_MSK3_POSN                                   0x3
#define _SSPADD_MSK3_POSITION                               0x3
#define _SSPADD_MSK3_SIZE                                   0x1
#define _SSPADD_MSK3_LENGTH                                 0x1
#define _SSPADD_MSK3_MASK                                   0x8
#define _SSPADD_MSK4_POSN                                   0x4
#define _SSPADD_MSK4_POSITION                               0x4
#define _SSPADD_MSK4_SIZE                                   0x1
#define _SSPADD_MSK4_LENGTH                                 0x1
#define _SSPADD_MSK4_MASK                                   0x10
#define _SSPADD_MSK5_POSN                                   0x5
#define _SSPADD_MSK5_POSITION                               0x5
#define _SSPADD_MSK5_SIZE                                   0x1
#define _SSPADD_MSK5_LENGTH                                 0x1
#define _SSPADD_MSK5_MASK                                   0x20
#define _SSPADD_MSK6_POSN                                   0x6
#define _SSPADD_MSK6_POSITION                               0x6
#define _SSPADD_MSK6_SIZE                                   0x1
#define _SSPADD_MSK6_LENGTH                                 0x1
#define _SSPADD_MSK6_MASK                                   0x40
#define _SSPADD_MSK7_POSN                                   0x7
#define _SSPADD_MSK7_POSITION                               0x7
#define _SSPADD_MSK7_SIZE                                   0x1
#define _SSPADD_MSK7_LENGTH                                 0x1
#define _SSPADD_MSK7_MASK                                   0x80
#define _SSPADD_MSK01_POSN                                  0x0
#define _SSPADD_MSK01_POSITION                              0x0
#define _SSPADD_MSK01_SIZE                                  0x1
#define _SSPADD_MSK01_LENGTH                                0x1
#define _SSPADD_MSK01_MASK                                  0x1
#define _SSPADD_MSK11_POSN                                  0x1
#define _SSPADD_MSK11_POSITION                              0x1
#define _SSPADD_MSK11_SIZE                                  0x1
#define _SSPADD_MSK11_LENGTH                                0x1
#define _SSPADD_MSK11_MASK                                  0x2
#define _SSPADD_MSK21_POSN                                  0x2
#define _SSPADD_MSK21_POSITION                              0x2
#define _SSPADD_MSK21_SIZE                                  0x1
#define _SSPADD_MSK21_LENGTH                                0x1
#define _SSPADD_MSK21_MASK                                  0x4
#define _SSPADD_MSK31_POSN                                  0x3
#define _SSPADD_MSK31_POSITION                              0x3
#define _SSPADD_MSK31_SIZE                                  0x1
#define _SSPADD_MSK31_LENGTH                                0x1
#define _SSPADD_MSK31_MASK                                  0x8
#define _SSPADD_MSK41_POSN                                  0x4
#define _SSPADD_MSK41_POSITION                              0x4
#define _SSPADD_MSK41_SIZE                                  0x1
#define _SSPADD_MSK41_LENGTH                                0x1
#define _SSPADD_MSK41_MASK                                  0x10
#define _SSPADD_MSK51_POSN                                  0x5
#define _SSPADD_MSK51_POSITION                              0x5
#define _SSPADD_MSK51_SIZE                                  0x1
#define _SSPADD_MSK51_LENGTH                                0x1
#define _SSPADD_MSK51_MASK                                  0x20
#define _SSPADD_MSK61_POSN                                  0x6
#define _SSPADD_MSK61_POSITION                              0x6
#define _SSPADD_MSK61_SIZE                                  0x1
#define _SSPADD_MSK61_LENGTH                                0x1
#define _SSPADD_MSK61_MASK                                  0x40
#define _SSPADD_MSK71_POSN                                  0x7
#define _SSPADD_MSK71_POSITION                              0x7
#define _SSPADD_MSK71_SIZE                                  0x1
#define _SSPADD_MSK71_LENGTH                                0x1
#define _SSPADD_MSK71_MASK                                  0x80

// Register: SSP1BUF
extern volatile unsigned char           SSP1BUF             @ 0xFC9;
#ifndef _LIB_BUILD
asm("SSP1BUF equ 0FC9h");
#endif
// aliases
extern volatile unsigned char           SSPBUF              @ 0xFC9;
#ifndef _LIB_BUILD
asm("SSPBUF equ 0FC9h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned SSPBUF                 :8;
    };
    struct {
        unsigned SSP1BUF                :8;
    };
} SSP1BUFbits_t;
extern volatile SSP1BUFbits_t SSP1BUFbits @ 0xFC9;
// bitfield macros
#define _SSP1BUF_SSPBUF_POSN                                0x0
#define _SSP1BUF_SSPBUF_POSITION                            0x0
#define _SSP1BUF_SSPBUF_SIZE                                0x8
#define _SSP1BUF_SSPBUF_LENGTH                              0x8
#define _SSP1BUF_SSPBUF_MASK                                0xFF
#define _SSP1BUF_SSP1BUF_POSN                               0x0
#define _SSP1BUF_SSP1BUF_POSITION                           0x0
#define _SSP1BUF_SSP1BUF_SIZE                               0x8
#define _SSP1BUF_SSP1BUF_LENGTH                             0x8
#define _SSP1BUF_SSP1BUF_MASK                               0xFF
// alias bitfield definitions
typedef union {
    struct {
        unsigned SSPBUF                 :8;
    };
    struct {
        unsigned SSP1BUF                :8;
    };
} SSPBUFbits_t;
extern volatile SSPBUFbits_t SSPBUFbits @ 0xFC9;
// bitfield macros
#define _SSPBUF_SSPBUF_POSN                                 0x0
#define _SSPBUF_SSPBUF_POSITION                             0x0
#define _SSPBUF_SSPBUF_SIZE                                 0x8
#define _SSPBUF_SSPBUF_LENGTH                               0x8
#define _SSPBUF_SSPBUF_MASK                                 0xFF
#define _SSPBUF_SSP1BUF_POSN                                0x0
#define _SSPBUF_SSP1BUF_POSITION                            0x0
#define _SSPBUF_SSP1BUF_SIZE                                0x8
#define _SSPBUF_SSP1BUF_LENGTH                              0x8
#define _SSPBUF_SSP1BUF_MASK                                0xFF

// Register: SSP1MSK
extern volatile unsigned char           SSP1MSK             @ 0xFCA;
#ifndef _LIB_BUILD
asm("SSP1MSK equ 0FCAh");
#endif
// aliases
extern volatile unsigned char           SSPMSK              @ 0xFCA;
#ifndef _LIB_BUILD
asm("SSPMSK equ 0FCAh");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned MSK0                   :1;
        unsigned MSK1                   :1;
        unsigned MSK2                   :1;
        unsigned MSK3                   :1;
        unsigned MSK4                   :1;
        unsigned MSK5                   :1;
        unsigned MSK6                   :1;
        unsigned MSK7                   :1;
    };
    struct {
        unsigned MSK                    :8;
    };
} SSP1MSKbits_t;
extern volatile SSP1MSKbits_t SSP1MSKbits @ 0xFCA;
// bitfield macros
#define _SSP1MSK_MSK0_POSN                                  0x0
#define _SSP1MSK_MSK0_POSITION                              0x0
#define _SSP1MSK_MSK0_SIZE                                  0x1
#define _SSP1MSK_MSK0_LENGTH                                0x1
#define _SSP1MSK_MSK0_MASK                                  0x1
#define _SSP1MSK_MSK1_POSN                                  0x1
#define _SSP1MSK_MSK1_POSITION                              0x1
#define _SSP1MSK_MSK1_SIZE                                  0x1
#define _SSP1MSK_MSK1_LENGTH                                0x1
#define _SSP1MSK_MSK1_MASK                                  0x2
#define _SSP1MSK_MSK2_POSN                                  0x2
#define _SSP1MSK_MSK2_POSITION                              0x2
#define _SSP1MSK_MSK2_SIZE                                  0x1
#define _SSP1MSK_MSK2_LENGTH                                0x1
#define _SSP1MSK_MSK2_MASK                                  0x4
#define _SSP1MSK_MSK3_POSN                                  0x3
#define _SSP1MSK_MSK3_POSITION                              0x3
#define _SSP1MSK_MSK3_SIZE                                  0x1
#define _SSP1MSK_MSK3_LENGTH                                0x1
#define _SSP1MSK_MSK3_MASK                                  0x8
#define _SSP1MSK_MSK4_POSN                                  0x4
#define _SSP1MSK_MSK4_POSITION                              0x4
#define _SSP1MSK_MSK4_SIZE                                  0x1
#define _SSP1MSK_MSK4_LENGTH                                0x1
#define _SSP1MSK_MSK4_MASK                                  0x10
#define _SSP1MSK_MSK5_POSN                                  0x5
#define _SSP1MSK_MSK5_POSITION                              0x5
#define _SSP1MSK_MSK5_SIZE                                  0x1
#define _SSP1MSK_MSK5_LENGTH                                0x1
#define _SSP1MSK_MSK5_MASK                                  0x20
#define _SSP1MSK_MSK6_POSN                                  0x6
#define _SSP1MSK_MSK6_POSITION                              0x6
#define _SSP1MSK_MSK6_SIZE                                  0x1
#define _SSP1MSK_MSK6_LENGTH                                0x1
#define _SSP1MSK_MSK6_MASK                                  0x40
#define _SSP1MSK_MSK7_POSN                                  0x7
#define _SSP1MSK_MSK7_POSITION                              0x7
#define _SSP1MSK_MSK7_SIZE                                  0x1
#define _SSP1MSK_MSK7_LENGTH                                0x1
#define _SSP1MSK_MSK7_MASK                                  0x80
#define _SSP1MSK_MSK_POSN                                   0x0
#define _SSP1MSK_MSK_POSITION                               0x0
#define _SSP1MSK_MSK_SIZE                                   0x8
#define _SSP1MSK_MSK_LENGTH                                 0x8
#define _SSP1MSK_MSK_MASK                                   0xFF
// alias bitfield definitions
typedef union {
    struct {
        unsigned MSK0                   :1;
        unsigned MSK1                   :1;
        unsigned MSK2                   :1;
        unsigned MSK3                   :1;
        unsigned MSK4                   :1;
        unsigned MSK5                   :1;
        unsigned MSK6                   :1;
        unsigned MSK7                   :1;
    };
    struct {
        unsigned MSK                    :8;
    };
} SSPMSKbits_t;
extern volatile SSPMSKbits_t SSPMSKbits @ 0xFCA;
// bitfield macros
#define _SSPMSK_MSK0_POSN                                   0x0
#define _SSPMSK_MSK0_POSITION                               0x0
#define _SSPMSK_MSK0_SIZE                                   0x1
#define _SSPMSK_MSK0_LENGTH                                 0x1
#define _SSPMSK_MSK0_MASK                                   0x1
#define _SSPMSK_MSK1_POSN                                   0x1
#define _SSPMSK_MSK1_POSITION                               0x1
#define _SSPMSK_MSK1_SIZE                                   0x1
#define _SSPMSK_MSK1_LENGTH                                 0x1
#define _SSPMSK_MSK1_MASK                                   0x2
#define _SSPMSK_MSK2_POSN                                   0x2
#define _SSPMSK_MSK2_POSITION                               0x2
#define _SSPMSK_MSK2_SIZE                                   0x1
#define _SSPMSK_MSK2_LENGTH                                 0x1
#define _SSPMSK_MSK2_MASK                                   0x4
#define _SSPMSK_MSK3_POSN                                   0x3
#define _SSPMSK_MSK3_POSITION                               0x3
#define _SSPMSK_MSK3_SIZE                                   0x1
#define _SSPMSK_MSK3_LENGTH                                 0x1
#define _SSPMSK_MSK3_MASK                                   0x8
#define _SSPMSK_MSK4_POSN                                   0x4
#define _SSPMSK_MSK4_POSITION                               0x4
#define _SSPMSK_MSK4_SIZE                                   0x1
#define _SSPMSK_MSK4_LENGTH                                 0x1
#define _SSPMSK_MSK4_MASK                                   0x10
#define _SSPMSK_MSK5_POSN                                   0x5
#define _SSPMSK_MSK5_POSITION                               0x5
#define _SSPMSK_MSK5_SIZE                                   0x1
#define _SSPMSK_MSK5_LENGTH                                 0x1
#define _SSPMSK_MSK5_MASK                                   0x20
#define _SSPMSK_MSK6_POSN                                   0x6
#define _SSPMSK_MSK6_POSITION                               0x6
#define _SSPMSK_MSK6_SIZE                                   0x1
#define _SSPMSK_MSK6_LENGTH                                 0x1
#define _SSPMSK_MSK6_MASK                                   0x40
#define _SSPMSK_MSK7_POSN                                   0x7
#define _SSPMSK_MSK7_POSITION                               0x7
#define _SSPMSK_MSK7_SIZE                                   0x1
#define _SSPMSK_MSK7_LENGTH                                 0x1
#define _SSPMSK_MSK7_MASK                                   0x80
#define _SSPMSK_MSK_POSN                                    0x0
#define _SSPMSK_MSK_POSITION                                0x0
#define _SSPMSK_MSK_SIZE                                    0x8
#define _SSPMSK_MSK_LENGTH                                  0x8
#define _SSPMSK_MSK_MASK                                    0xFF

// Register: SSP1CON3
extern volatile unsigned char           SSP1CON3            @ 0xFCB;
#ifndef _LIB_BUILD
asm("SSP1CON3 equ 0FCBh");
#endif
// aliases
extern volatile unsigned char           SSPCON3             @ 0xFCB;
#ifndef _LIB_BUILD
asm("SSPCON3 equ 0FCBh");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned DHEN                   :1;
        unsigned AHEN                   :1;
        unsigned SBCDE                  :1;
        unsigned SDAHT                  :1;
        unsigned BOEN                   :1;
        unsigned SCIE                   :1;
        unsigned PCIE                   :1;
        unsigned ACKTIM                 :1;
    };
} SSP1CON3bits_t;
extern volatile SSP1CON3bits_t SSP1CON3bits @ 0xFCB;
// bitfield macros
#define _SSP1CON3_DHEN_POSN                                 0x0
#define _SSP1CON3_DHEN_POSITION                             0x0
#define _SSP1CON3_DHEN_SIZE                                 0x1
#define _SSP1CON3_DHEN_LENGTH                               0x1
#define _SSP1CON3_DHEN_MASK                                 0x1
#define _SSP1CON3_AHEN_POSN                                 0x1
#define _SSP1CON3_AHEN_POSITION                             0x1
#define _SSP1CON3_AHEN_SIZE                                 0x1
#define _SSP1CON3_AHEN_LENGTH                               0x1
#define _SSP1CON3_AHEN_MASK                                 0x2
#define _SSP1CON3_SBCDE_POSN                                0x2
#define _SSP1CON3_SBCDE_POSITION                            0x2
#define _SSP1CON3_SBCDE_SIZE                                0x1
#define _SSP1CON3_SBCDE_LENGTH                              0x1
#define _SSP1CON3_SBCDE_MASK                                0x4
#define _SSP1CON3_SDAHT_POSN                                0x3
#define _SSP1CON3_SDAHT_POSITION                            0x3
#define _SSP1CON3_SDAHT_SIZE                                0x1
#define _SSP1CON3_SDAHT_LENGTH                              0x1
#define _SSP1CON3_SDAHT_MASK                                0x8
#define _SSP1CON3_BOEN_POSN                                 0x4
#define _SSP1CON3_BOEN_POSITION                             0x4
#define _SSP1CON3_BOEN_SIZE                                 0x1
#define _SSP1CON3_BOEN_LENGTH                               0x1
#define _SSP1CON3_BOEN_MASK                                 0x10
#define _SSP1CON3_SCIE_POSN                                 0x5
#define _SSP1CON3_SCIE_POSITION                             0x5
#define _SSP1CON3_SCIE_SIZE                                 0x1
#define _SSP1CON3_SCIE_LENGTH                               0x1
#define _SSP1CON3_SCIE_MASK                                 0x20
#define _SSP1CON3_PCIE_POSN                                 0x6
#define _SSP1CON3_PCIE_POSITION                             0x6
#define _SSP1CON3_PCIE_SIZE                                 0x1
#define _SSP1CON3_PCIE_LENGTH                               0x1
#define _SSP1CON3_PCIE_MASK                                 0x40
#define _SSP1CON3_ACKTIM_POSN                               0x7
#define _SSP1CON3_ACKTIM_POSITION                           0x7
#define _SSP1CON3_ACKTIM_SIZE                               0x1
#define _SSP1CON3_ACKTIM_LENGTH                             0x1
#define _SSP1CON3_ACKTIM_MASK                               0x80
// alias bitfield definitions
typedef union {
    struct {
        unsigned DHEN                   :1;
        unsigned AHEN                   :1;
        unsigned SBCDE                  :1;
        unsigned SDAHT                  :1;
        unsigned BOEN                   :1;
        unsigned SCIE                   :1;
        unsigned PCIE                   :1;
        unsigned ACKTIM                 :1;
    };
} SSPCON3bits_t;
extern volatile SSPCON3bits_t SSPCON3bits @ 0xFCB;
// bitfield macros
#define _SSPCON3_DHEN_POSN                                  0x0
#define _SSPCON3_DHEN_POSITION                              0x0
#define _SSPCON3_DHEN_SIZE                                  0x1
#define _SSPCON3_DHEN_LENGTH                                0x1
#define _SSPCON3_DHEN_MASK                                  0x1
#define _SSPCON3_AHEN_POSN                                  0x1
#define _SSPCON3_AHEN_POSITION                              0x1
#define _SSPCON3_AHEN_SIZE                                  0x1
#define _SSPCON3_AHEN_LENGTH                                0x1
#define _SSPCON3_AHEN_MASK                                  0x2
#define _SSPCON3_SBCDE_POSN                                 0x2
#define _SSPCON3_SBCDE_POSITION                             0x2
#define _SSPCON3_SBCDE_SIZE                                 0x1
#define _SSPCON3_SBCDE_LENGTH                               0x1
#define _SSPCON3_SBCDE_MASK                                 0x4
#define _SSPCON3_SDAHT_POSN                                 0x3
#define _SSPCON3_SDAHT_POSITION                             0x3
#define _SSPCON3_SDAHT_SIZE                                 0x1
#define _SSPCON3_SDAHT_LENGTH                               0x1
#define _SSPCON3_SDAHT_MASK                                 0x8
#define _SSPCON3_BOEN_POSN                                  0x4
#define _SSPCON3_BOEN_POSITION                              0x4
#define _SSPCON3_BOEN_SIZE                                  0x1
#define _SSPCON3_BOEN_LENGTH                                0x1
#define _SSPCON3_BOEN_MASK                                  0x10
#define _SSPCON3_SCIE_POSN                                  0x5
#define _SSPCON3_SCIE_POSITION                              0x5
#define _SSPCON3_SCIE_SIZE                                  0x1
#define _SSPCON3_SCIE_LENGTH                                0x1
#define _SSPCON3_SCIE_MASK                                  0x20
#define _SSPCON3_PCIE_POSN                                  0x6
#define _SSPCON3_PCIE_POSITION                              0x6
#define _SSPCON3_PCIE_SIZE                                  0x1
#define _SSPCON3_PCIE_LENGTH                                0x1
#define _SSPCON3_PCIE_MASK                                  0x40
#define _SSPCON3_ACKTIM_POSN                                0x7
#define _SSPCON3_ACKTIM_POSITION                            0x7
#define _SSPCON3_ACKTIM_SIZE                                0x1
#define _SSPCON3_ACKTIM_LENGTH                              0x1
#define _SSPCON3_ACKTIM_MASK                                0x80

// Register: T1GCON
extern volatile unsigned char           T1GCON              @ 0xFCC;
#ifndef _LIB_BUILD
asm("T1GCON equ 0FCCh");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned                        :3;
        unsigned T1GGO_NOT_DONE         :1;
    };
    struct {
        unsigned T1GSS                  :2;
        unsigned T1GVAL                 :1;
        unsigned T1GGO_nDONE            :1;
        unsigned T1GSPM                 :1;
        unsigned T1GTM                  :1;
        unsigned T1GPOL                 :1;
        unsigned TMR1GE                 :1;
    };
    struct {
        unsigned T1GSS0                 :1;
        unsigned T1GSS1                 :1;
        unsigned                        :1;
        unsigned T1G_DONE               :1;
    };
    struct {
        unsigned                        :3;
        unsigned T1GGO                  :1;
    };
} T1GCONbits_t;
extern volatile T1GCONbits_t T1GCONbits @ 0xFCC;
// bitfield macros
#define _T1GCON_T1GGO_NOT_DONE_POSN                         0x3
#define _T1GCON_T1GGO_NOT_DONE_POSITION                     0x3
#define _T1GCON_T1GGO_NOT_DONE_SIZE                         0x1
#define _T1GCON_T1GGO_NOT_DONE_LENGTH                       0x1
#define _T1GCON_T1GGO_NOT_DONE_MASK                         0x8
#define _T1GCON_T1GSS_POSN                                  0x0
#define _T1GCON_T1GSS_POSITION                              0x0
#define _T1GCON_T1GSS_SIZE                                  0x2
#define _T1GCON_T1GSS_LENGTH                                0x2
#define _T1GCON_T1GSS_MASK                                  0x3
#define _T1GCON_T1GVAL_POSN                                 0x2
#define _T1GCON_T1GVAL_POSITION                             0x2
#define _T1GCON_T1GVAL_SIZE                                 0x1
#define _T1GCON_T1GVAL_LENGTH                               0x1
#define _T1GCON_T1GVAL_MASK                                 0x4
#define _T1GCON_T1GGO_nDONE_POSN                            0x3
#define _T1GCON_T1GGO_nDONE_POSITION                        0x3
#define _T1GCON_T1GGO_nDONE_SIZE                            0x1
#define _T1GCON_T1GGO_nDONE_LENGTH                          0x1
#define _T1GCON_T1GGO_nDONE_MASK                            0x8
#define _T1GCON_T1GSPM_POSN                                 0x4
#define _T1GCON_T1GSPM_POSITION                             0x4
#define _T1GCON_T1GSPM_SIZE                                 0x1
#define _T1GCON_T1GSPM_LENGTH                               0x1
#define _T1GCON_T1GSPM_MASK                                 0x10
#define _T1GCON_T1GTM_POSN                                  0x5
#define _T1GCON_T1GTM_POSITION                              0x5
#define _T1GCON_T1GTM_SIZE                                  0x1
#define _T1GCON_T1GTM_LENGTH                                0x1
#define _T1GCON_T1GTM_MASK                                  0x20
#define _T1GCON_T1GPOL_POSN                                 0x6
#define _T1GCON_T1GPOL_POSITION                             0x6
#define _T1GCON_T1GPOL_SIZE                                 0x1
#define _T1GCON_T1GPOL_LENGTH                               0x1
#define _T1GCON_T1GPOL_MASK                                 0x40
#define _T1GCON_TMR1GE_POSN                                 0x7
#define _T1GCON_TMR1GE_POSITION                             0x7
#define _T1GCON_TMR1GE_SIZE                                 0x1
#define _T1GCON_TMR1GE_LENGTH                               0x1
#define _T1GCON_TMR1GE_MASK                                 0x80
#define _T1GCON_T1GSS0_POSN                                 0x0
#define _T1GCON_T1GSS0_POSITION                             0x0
#define _T1GCON_T1GSS0_SIZE                                 0x1
#define _T1GCON_T1GSS0_LENGTH                               0x1
#define _T1GCON_T1GSS0_MASK                                 0x1
#define _T1GCON_T1GSS1_POSN                                 0x1
#define _T1GCON_T1GSS1_POSITION                             0x1
#define _T1GCON_T1GSS1_SIZE                                 0x1
#define _T1GCON_T1GSS1_LENGTH                               0x1
#define _T1GCON_T1GSS1_MASK                                 0x2
#define _T1GCON_T1G_DONE_POSN                               0x3
#define _T1GCON_T1G_DONE_POSITION                           0x3
#define _T1GCON_T1G_DONE_SIZE                               0x1
#define _T1GCON_T1G_DONE_LENGTH                             0x1
#define _T1GCON_T1G_DONE_MASK                               0x8
#define _T1GCON_T1GGO_POSN                                  0x3
#define _T1GCON_T1GGO_POSITION                              0x3
#define _T1GCON_T1GGO_SIZE                                  0x1
#define _T1GCON_T1GGO_LENGTH                                0x1
#define _T1GCON_T1GGO_MASK                                  0x8

// Register: T1CON
extern volatile unsigned char           T1CON               @ 0xFCD;
#ifndef _LIB_BUILD
asm("T1CON equ 0FCDh");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned                        :2;
        unsigned NOT_T1SYNC             :1;
    };
    struct {
        unsigned TMR1ON                 :1;
        unsigned T1RD16                 :1;
        unsigned nT1SYNC                :1;
        unsigned T1SOSCEN               :1;
        unsigned T1CKPS                 :2;
        unsigned TMR1CS                 :2;
    };
    struct {
        unsigned                        :1;
        unsigned RD16                   :1;
        unsigned T1SYNC                 :1;
        unsigned T1OSCEN                :1;
        unsigned T1CKPS0                :1;
        unsigned T1CKPS1                :1;
        unsigned TMR1CS0                :1;
        unsigned TMR1CS1                :1;
    };
    struct {
        unsigned                        :3;
        unsigned SOSCEN                 :1;
    };
} T1CONbits_t;
extern volatile T1CONbits_t T1CONbits @ 0xFCD;
// bitfield macros
#define _T1CON_NOT_T1SYNC_POSN                              0x2
#define _T1CON_NOT_T1SYNC_POSITION                          0x2
#define _T1CON_NOT_T1SYNC_SIZE                              0x1
#define _T1CON_NOT_T1SYNC_LENGTH                            0x1
#define _T1CON_NOT_T1SYNC_MASK                              0x4
#define _T1CON_TMR1ON_POSN                                  0x0
#define _T1CON_TMR1ON_POSITION                              0x0
#define _T1CON_TMR1ON_SIZE                                  0x1
#define _T1CON_TMR1ON_LENGTH                                0x1
#define _T1CON_TMR1ON_MASK                                  0x1
#define _T1CON_T1RD16_POSN                                  0x1
#define _T1CON_T1RD16_POSITION                              0x1
#define _T1CON_T1RD16_SIZE                                  0x1
#define _T1CON_T1RD16_LENGTH                                0x1
#define _T1CON_T1RD16_MASK                                  0x2
#define _T1CON_nT1SYNC_POSN                                 0x2
#define _T1CON_nT1SYNC_POSITION                             0x2
#define _T1CON_nT1SYNC_SIZE                                 0x1
#define _T1CON_nT1SYNC_LENGTH                               0x1
#define _T1CON_nT1SYNC_MASK                                 0x4
#define _T1CON_T1SOSCEN_POSN                                0x3
#define _T1CON_T1SOSCEN_POSITION                            0x3
#define _T1CON_T1SOSCEN_SIZE                                0x1
#define _T1CON_T1SOSCEN_LENGTH                              0x1
#define _T1CON_T1SOSCEN_MASK                                0x8
#define _T1CON_T1CKPS_POSN                                  0x4
#define _T1CON_T1CKPS_POSITION                              0x4
#define _T1CON_T1CKPS_SIZE                                  0x2
#define _T1CON_T1CKPS_LENGTH                                0x2
#define _T1CON_T1CKPS_MASK                                  0x30
#define _T1CON_TMR1CS_POSN                                  0x6
#define _T1CON_TMR1CS_POSITION                              0x6
#define _T1CON_TMR1CS_SIZE                                  0x2
#define _T1CON_TMR1CS_LENGTH                                0x2
#define _T1CON_TMR1CS_MASK                                  0xC0
#define _T1CON_RD16_POSN                                    0x1
#define _T1CON_RD16_POSITION                                0x1
#define _T1CON_RD16_SIZE                                    0x1
#define _T1CON_RD16_LENGTH                                  0x1
#define _T1CON_RD16_MASK                                    0x2
#define _T1CON_T1SYNC_POSN                                  0x2
#define _T1CON_T1SYNC_POSITION                              0x2
#define _T1CON_T1SYNC_SIZE                                  0x1
#define _T1CON_T1SYNC_LENGTH                                0x1
#define _T1CON_T1SYNC_MASK                                  0x4
#define _T1CON_T1OSCEN_POSN                                 0x3
#define _T1CON_T1OSCEN_POSITION                             0x3
#define _T1CON_T1OSCEN_SIZE                                 0x1
#define _T1CON_T1OSCEN_LENGTH                               0x1
#define _T1CON_T1OSCEN_MASK                                 0x8
#define _T1CON_T1CKPS0_POSN                                 0x4
#define _T1CON_T1CKPS0_POSITION                             0x4
#define _T1CON_T1CKPS0_SIZE                                 0x1
#define _T1CON_T1CKPS0_LENGTH                               0x1
#define _T1CON_T1CKPS0_MASK                                 0x10
#define _T1CON_T1CKPS1_POSN                                 0x5
#define _T1CON_T1CKPS1_POSITION                             0x5
#define _T1CON_T1CKPS1_SIZE                                 0x1
#define _T1CON_T1CKPS1_LENGTH                               0x1
#define _T1CON_T1CKPS1_MASK                                 0x20
#define _T1CON_TMR1CS0_POSN                                 0x6
#define _T1CON_TMR1CS0_POSITION                             0x6
#define _T1CON_TMR1CS0_SIZE                                 0x1
#define _T1CON_TMR1CS0_LENGTH                               0x1
#define _T1CON_TMR1CS0_MASK                                 0x40
#define _T1CON_TMR1CS1_POSN                                 0x7
#define _T1CON_TMR1CS1_POSITION                             0x7
#define _T1CON_TMR1CS1_SIZE                                 0x1
#define _T1CON_TMR1CS1_LENGTH                               0x1
#define _T1CON_TMR1CS1_MASK                                 0x80
#define _T1CON_SOSCEN_POSN                                  0x3
#define _T1CON_SOSCEN_POSITION                              0x3
#define _T1CON_SOSCEN_SIZE                                  0x1
#define _T1CON_SOSCEN_LENGTH                                0x1
#define _T1CON_SOSCEN_MASK                                  0x8

// Register: TMR1
extern volatile unsigned short          TMR1                @ 0xFCE;
#ifndef _LIB_BUILD
asm("TMR1 equ 0FCEh");
#endif

// Register: TMR1L
extern volatile unsigned char           TMR1L               @ 0xFCE;
#ifndef _LIB_BUILD
asm("TMR1L equ 0FCEh");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned TMR1L                  :8;
    };
} TMR1Lbits_t;
extern volatile TMR1Lbits_t TMR1Lbits @ 0xFCE;
// bitfield macros
#define _TMR1L_TMR1L_POSN                                   0x0
#define _TMR1L_TMR1L_POSITION                               0x0
#define _TMR1L_TMR1L_SIZE                                   0x8
#define _TMR1L_TMR1L_LENGTH                                 0x8
#define _TMR1L_TMR1L_MASK                                   0xFF

// Register: TMR1H
extern volatile unsigned char           TMR1H               @ 0xFCF;
#ifndef _LIB_BUILD
asm("TMR1H equ 0FCFh");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned TMR1H                  :8;
    };
} TMR1Hbits_t;
extern volatile TMR1Hbits_t TMR1Hbits @ 0xFCF;
// bitfield macros
#define _TMR1H_TMR1H_POSN                                   0x0
#define _TMR1H_TMR1H_POSITION                               0x0
#define _TMR1H_TMR1H_SIZE                                   0x8
#define _TMR1H_TMR1H_LENGTH                                 0x8
#define _TMR1H_TMR1H_MASK                                   0xFF

// Register: RCON
extern volatile unsigned char           RCON                @ 0xFD0;
#ifndef _LIB_BUILD
asm("RCON equ 0FD0h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned NOT_BOR                :1;
    };
    struct {
        unsigned                        :1;
        unsigned NOT_POR                :1;
    };
    struct {
        unsigned                        :2;
        unsigned NOT_PD                 :1;
    };
    struct {
        unsigned                        :3;
        unsigned NOT_TO                 :1;
    };
    struct {
        unsigned                        :4;
        unsigned NOT_RI                 :1;
    };
    struct {
        unsigned nBOR                   :1;
        unsigned nPOR                   :1;
        unsigned nPD                    :1;
        unsigned nTO                    :1;
        unsigned nRI                    :1;
        unsigned                        :1;
        unsigned SBOREN                 :1;
        unsigned IPEN                   :1;
    };
    struct {
        unsigned BOR                    :1;
        unsigned POR                    :1;
        unsigned PD                     :1;
        unsigned TO                     :1;
        unsigned RI                     :1;
    };
} RCONbits_t;
extern volatile RCONbits_t RCONbits @ 0xFD0;
// bitfield macros
#define _RCON_NOT_BOR_POSN                                  0x0
#define _RCON_NOT_BOR_POSITION                              0x0
#define _RCON_NOT_BOR_SIZE                                  0x1
#define _RCON_NOT_BOR_LENGTH                                0x1
#define _RCON_NOT_BOR_MASK                                  0x1
#define _RCON_NOT_POR_POSN                                  0x1
#define _RCON_NOT_POR_POSITION                              0x1
#define _RCON_NOT_POR_SIZE                                  0x1
#define _RCON_NOT_POR_LENGTH                                0x1
#define _RCON_NOT_POR_MASK                                  0x2
#define _RCON_NOT_PD_POSN                                   0x2
#define _RCON_NOT_PD_POSITION                               0x2
#define _RCON_NOT_PD_SIZE                                   0x1
#define _RCON_NOT_PD_LENGTH                                 0x1
#define _RCON_NOT_PD_MASK                                   0x4
#define _RCON_NOT_TO_POSN                                   0x3
#define _RCON_NOT_TO_POSITION                               0x3
#define _RCON_NOT_TO_SIZE                                   0x1
#define _RCON_NOT_TO_LENGTH                                 0x1
#define _RCON_NOT_TO_MASK                                   0x8
#define _RCON_NOT_RI_POSN                                   0x4
#define _RCON_NOT_RI_POSITION                               0x4
#define _RCON_NOT_RI_SIZE                                   0x1
#define _RCON_NOT_RI_LENGTH                                 0x1
#define _RCON_NOT_RI_MASK                                   0x10
#define _RCON_nBOR_POSN                                     0x0
#define _RCON_nBOR_POSITION                                 0x0
#define _RCON_nBOR_SIZE                                     0x1
#define _RCON_nBOR_LENGTH                                   0x1
#define _RCON_nBOR_MASK                                     0x1
#define _RCON_nPOR_POSN                                     0x1
#define _RCON_nPOR_POSITION                                 0x1
#define _RCON_nPOR_SIZE                                     0x1
#define _RCON_nPOR_LENGTH                                   0x1
#define _RCON_nPOR_MASK                                     0x2
#define _RCON_nPD_POSN                                      0x2
#define _RCON_nPD_POSITION                                  0x2
#define _RCON_nPD_SIZE                                      0x1
#define _RCON_nPD_LENGTH                                    0x1
#define _RCON_nPD_MASK                                      0x4
#define _RCON_nTO_POSN                                      0x3
#define _RCON_nTO_POSITION                                  0x3
#define _RCON_nTO_SIZE                                      0x1
#define _RCON_nTO_LENGTH                                    0x1
#define _RCON_nTO_MASK                                      0x8
#define _RCON_nRI_POSN                                      0x4
#define _RCON_nRI_POSITION                                  0x4
#define _RCON_nRI_SIZE                                      0x1
#define _RCON_nRI_LENGTH                                    0x1
#define _RCON_nRI_MASK                                      0x10
#define _RCON_SBOREN_POSN                                   0x6
#define _RCON_SBOREN_POSITION                               0x6
#define _RCON_SBOREN_SIZE                                   0x1
#define _RCON_SBOREN_LENGTH                                 0x1
#define _RCON_SBOREN_MASK                                   0x40
#define _RCON_IPEN_POSN                                     0x7
#define _RCON_IPEN_POSITION                                 0x7
#define _RCON_IPEN_SIZE                                     0x1
#define _RCON_IPEN_LENGTH                                   0x1
#define _RCON_IPEN_MASK                                     0x80
#define _RCON_BOR_POSN                                      0x0
#define _RCON_BOR_POSITION                                  0x0
#define _RCON_BOR_SIZE                                      0x1
#define _RCON_BOR_LENGTH                                    0x1
#define _RCON_BOR_MASK                                      0x1
#define _RCON_POR_POSN                                      0x1
#define _RCON_POR_POSITION                                  0x1
#define _RCON_POR_SIZE                                      0x1
#define _RCON_POR_LENGTH                                    0x1
#define _RCON_POR_MASK                                      0x2
#define _RCON_PD_POSN                                       0x2
#define _RCON_PD_POSITION                                   0x2
#define _RCON_PD_SIZE                                       0x1
#define _RCON_PD_LENGTH                                     0x1
#define _RCON_PD_MASK                                       0x4
#define _RCON_TO_POSN                                       0x3
#define _RCON_TO_POSITION                                   0x3
#define _RCON_TO_SIZE                                       0x1
#define _RCON_TO_LENGTH                                     0x1
#define _RCON_TO_MASK                                       0x8
#define _RCON_RI_POSN                                       0x4
#define _RCON_RI_POSITION                                   0x4
#define _RCON_RI_SIZE                                       0x1
#define _RCON_RI_LENGTH                                     0x1
#define _RCON_RI_MASK                                       0x10

// Register: WDTCON
extern volatile unsigned char           WDTCON              @ 0xFD1;
#ifndef _LIB_BUILD
asm("WDTCON equ 0FD1h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned SWDTEN                 :1;
    };
    struct {
        unsigned SWDTE                  :1;
    };
} WDTCONbits_t;
extern volatile WDTCONbits_t WDTCONbits @ 0xFD1;
// bitfield macros
#define _WDTCON_SWDTEN_POSN                                 0x0
#define _WDTCON_SWDTEN_POSITION                             0x0
#define _WDTCON_SWDTEN_SIZE                                 0x1
#define _WDTCON_SWDTEN_LENGTH                               0x1
#define _WDTCON_SWDTEN_MASK                                 0x1
#define _WDTCON_SWDTE_POSN                                  0x0
#define _WDTCON_SWDTE_POSITION                              0x0
#define _WDTCON_SWDTE_SIZE                                  0x1
#define _WDTCON_SWDTE_LENGTH                                0x1
#define _WDTCON_SWDTE_MASK                                  0x1

// Register: OSCCON2
extern volatile unsigned char           OSCCON2             @ 0xFD2;
#ifndef _LIB_BUILD
asm("OSCCON2 equ 0FD2h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned LFIOFS                 :1;
        unsigned MFIOFS                 :1;
        unsigned PRISD                  :1;
        unsigned SOSCGO                 :1;
        unsigned MFIOSEL                :1;
        unsigned                        :1;
        unsigned SOSCRUN                :1;
        unsigned PLLRDY                 :1;
    };
} OSCCON2bits_t;
extern volatile OSCCON2bits_t OSCCON2bits @ 0xFD2;
// bitfield macros
#define _OSCCON2_LFIOFS_POSN                                0x0
#define _OSCCON2_LFIOFS_POSITION                            0x0
#define _OSCCON2_LFIOFS_SIZE                                0x1
#define _OSCCON2_LFIOFS_LENGTH                              0x1
#define _OSCCON2_LFIOFS_MASK                                0x1
#define _OSCCON2_MFIOFS_POSN                                0x1
#define _OSCCON2_MFIOFS_POSITION                            0x1
#define _OSCCON2_MFIOFS_SIZE                                0x1
#define _OSCCON2_MFIOFS_LENGTH                              0x1
#define _OSCCON2_MFIOFS_MASK                                0x2
#define _OSCCON2_PRISD_POSN                                 0x2
#define _OSCCON2_PRISD_POSITION                             0x2
#define _OSCCON2_PRISD_SIZE                                 0x1
#define _OSCCON2_PRISD_LENGTH                               0x1
#define _OSCCON2_PRISD_MASK                                 0x4
#define _OSCCON2_SOSCGO_POSN                                0x3
#define _OSCCON2_SOSCGO_POSITION                            0x3
#define _OSCCON2_SOSCGO_SIZE                                0x1
#define _OSCCON2_SOSCGO_LENGTH                              0x1
#define _OSCCON2_SOSCGO_MASK                                0x8
#define _OSCCON2_MFIOSEL_POSN                               0x4
#define _OSCCON2_MFIOSEL_POSITION                           0x4
#define _OSCCON2_MFIOSEL_SIZE                               0x1
#define _OSCCON2_MFIOSEL_LENGTH                             0x1
#define _OSCCON2_MFIOSEL_MASK                               0x10
#define _OSCCON2_SOSCRUN_POSN                               0x6
#define _OSCCON2_SOSCRUN_POSITION                           0x6
#define _OSCCON2_SOSCRUN_SIZE                               0x1
#define _OSCCON2_SOSCRUN_LENGTH                             0x1
#define _OSCCON2_SOSCRUN_MASK                               0x40
#define _OSCCON2_PLLRDY_POSN                                0x7
#define _OSCCON2_PLLRDY_POSITION                            0x7
#define _OSCCON2_PLLRDY_SIZE                                0x1
#define _OSCCON2_PLLRDY_LENGTH                              0x1
#define _OSCCON2_PLLRDY_MASK                                0x80

// Register: OSCCON
extern volatile unsigned char           OSCCON              @ 0xFD3;
#ifndef _LIB_BUILD
asm("OSCCON equ 0FD3h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned SCS                    :2;
        unsigned HFIOFS                 :1;
        unsigned OSTS                   :1;
        unsigned IRCF                   :3;
        unsigned IDLEN                  :1;
    };
    struct {
        unsigned SCS0                   :1;
        unsigned SCS1                   :1;
        unsigned IOFS                   :1;
        unsigned                        :1;
        unsigned IRCF0                  :1;
        unsigned IRCF1                  :1;
        unsigned IRCF2                  :1;
    };
} OSCCONbits_t;
extern volatile OSCCONbits_t OSCCONbits @ 0xFD3;
// bitfield macros
#define _OSCCON_SCS_POSN                                    0x0
#define _OSCCON_SCS_POSITION                                0x0
#define _OSCCON_SCS_SIZE                                    0x2
#define _OSCCON_SCS_LENGTH                                  0x2
#define _OSCCON_SCS_MASK                                    0x3
#define _OSCCON_HFIOFS_POSN                                 0x2
#define _OSCCON_HFIOFS_POSITION                             0x2
#define _OSCCON_HFIOFS_SIZE                                 0x1
#define _OSCCON_HFIOFS_LENGTH                               0x1
#define _OSCCON_HFIOFS_MASK                                 0x4
#define _OSCCON_OSTS_POSN                                   0x3
#define _OSCCON_OSTS_POSITION                               0x3
#define _OSCCON_OSTS_SIZE                                   0x1
#define _OSCCON_OSTS_LENGTH                                 0x1
#define _OSCCON_OSTS_MASK                                   0x8
#define _OSCCON_IRCF_POSN                                   0x4
#define _OSCCON_IRCF_POSITION                               0x4
#define _OSCCON_IRCF_SIZE                                   0x3
#define _OSCCON_IRCF_LENGTH                                 0x3
#define _OSCCON_IRCF_MASK                                   0x70
#define _OSCCON_IDLEN_POSN                                  0x7
#define _OSCCON_IDLEN_POSITION                              0x7
#define _OSCCON_IDLEN_SIZE                                  0x1
#define _OSCCON_IDLEN_LENGTH                                0x1
#define _OSCCON_IDLEN_MASK                                  0x80
#define _OSCCON_SCS0_POSN                                   0x0
#define _OSCCON_SCS0_POSITION                               0x0
#define _OSCCON_SCS0_SIZE                                   0x1
#define _OSCCON_SCS0_LENGTH                                 0x1
#define _OSCCON_SCS0_MASK                                   0x1
#define _OSCCON_SCS1_POSN                                   0x1
#define _OSCCON_SCS1_POSITION                               0x1
#define _OSCCON_SCS1_SIZE                                   0x1
#define _OSCCON_SCS1_LENGTH                                 0x1
#define _OSCCON_SCS1_MASK                                   0x2
#define _OSCCON_IOFS_POSN                                   0x2
#define _OSCCON_IOFS_POSITION                               0x2
#define _OSCCON_IOFS_SIZE                                   0x1
#define _OSCCON_IOFS_LENGTH                                 0x1
#define _OSCCON_IOFS_MASK                                   0x4
#define _OSCCON_IRCF0_POSN                                  0x4
#define _OSCCON_IRCF0_POSITION                              0x4
#define _OSCCON_IRCF0_SIZE                                  0x1
#define _OSCCON_IRCF0_LENGTH                                0x1
#define _OSCCON_IRCF0_MASK                                  0x10
#define _OSCCON_IRCF1_POSN                                  0x5
#define _OSCCON_IRCF1_POSITION                              0x5
#define _OSCCON_IRCF1_SIZE                                  0x1
#define _OSCCON_IRCF1_LENGTH                                0x1
#define _OSCCON_IRCF1_MASK                                  0x20
#define _OSCCON_IRCF2_POSN                                  0x6
#define _OSCCON_IRCF2_POSITION                              0x6
#define _OSCCON_IRCF2_SIZE                                  0x1
#define _OSCCON_IRCF2_LENGTH                                0x1
#define _OSCCON_IRCF2_MASK                                  0x40

// Register: T0CON
extern volatile unsigned char           T0CON               @ 0xFD5;
#ifndef _LIB_BUILD
asm("T0CON equ 0FD5h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned T0PS                   :3;
        unsigned PSA                    :1;
        unsigned T0SE                   :1;
        unsigned T0CS                   :1;
        unsigned T08BIT                 :1;
        unsigned TMR0ON                 :1;
    };
    struct {
        unsigned T0PS0                  :1;
        unsigned T0PS1                  :1;
        unsigned T0PS2                  :1;
    };
} T0CONbits_t;
extern volatile T0CONbits_t T0CONbits @ 0xFD5;
// bitfield macros
#define _T0CON_T0PS_POSN                                    0x0
#define _T0CON_T0PS_POSITION                                0x0
#define _T0CON_T0PS_SIZE                                    0x3
#define _T0CON_T0PS_LENGTH                                  0x3
#define _T0CON_T0PS_MASK                                    0x7
#define _T0CON_PSA_POSN                                     0x3
#define _T0CON_PSA_POSITION                                 0x3
#define _T0CON_PSA_SIZE                                     0x1
#define _T0CON_PSA_LENGTH                                   0x1
#define _T0CON_PSA_MASK                                     0x8
#define _T0CON_T0SE_POSN                                    0x4
#define _T0CON_T0SE_POSITION                                0x4
#define _T0CON_T0SE_SIZE                                    0x1
#define _T0CON_T0SE_LENGTH                                  0x1
#define _T0CON_T0SE_MASK                                    0x10
#define _T0CON_T0CS_POSN                                    0x5
#define _T0CON_T0CS_POSITION                                0x5
#define _T0CON_T0CS_SIZE                                    0x1
#define _T0CON_T0CS_LENGTH                                  0x1
#define _T0CON_T0CS_MASK                                    0x20
#define _T0CON_T08BIT_POSN                                  0x6
#define _T0CON_T08BIT_POSITION                              0x6
#define _T0CON_T08BIT_SIZE                                  0x1
#define _T0CON_T08BIT_LENGTH                                0x1
#define _T0CON_T08BIT_MASK                                  0x40
#define _T0CON_TMR0ON_POSN                                  0x7
#define _T0CON_TMR0ON_POSITION                              0x7
#define _T0CON_TMR0ON_SIZE                                  0x1
#define _T0CON_TMR0ON_LENGTH                                0x1
#define _T0CON_TMR0ON_MASK                                  0x80
#define _T0CON_T0PS0_POSN                                   0x0
#define _T0CON_T0PS0_POSITION                               0x0
#define _T0CON_T0PS0_SIZE                                   0x1
#define _T0CON_T0PS0_LENGTH                                 0x1
#define _T0CON_T0PS0_MASK                                   0x1
#define _T0CON_T0PS1_POSN                                   0x1
#define _T0CON_T0PS1_POSITION                               0x1
#define _T0CON_T0PS1_SIZE                                   0x1
#define _T0CON_T0PS1_LENGTH                                 0x1
#define _T0CON_T0PS1_MASK                                   0x2
#define _T0CON_T0PS2_POSN                                   0x2
#define _T0CON_T0PS2_POSITION                               0x2
#define _T0CON_T0PS2_SIZE                                   0x1
#define _T0CON_T0PS2_LENGTH                                 0x1
#define _T0CON_T0PS2_MASK                                   0x4

// Register: TMR0
extern volatile unsigned short          TMR0                @ 0xFD6;
#ifndef _LIB_BUILD
asm("TMR0 equ 0FD6h");
#endif

// Register: TMR0L
extern volatile unsigned char           TMR0L               @ 0xFD6;
#ifndef _LIB_BUILD
asm("TMR0L equ 0FD6h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned TMR0L                  :8;
    };
} TMR0Lbits_t;
extern volatile TMR0Lbits_t TMR0Lbits @ 0xFD6;
// bitfield macros
#define _TMR0L_TMR0L_POSN                                   0x0
#define _TMR0L_TMR0L_POSITION                               0x0
#define _TMR0L_TMR0L_SIZE                                   0x8
#define _TMR0L_TMR0L_LENGTH                                 0x8
#define _TMR0L_TMR0L_MASK                                   0xFF

// Register: TMR0H
extern volatile unsigned char           TMR0H               @ 0xFD7;
#ifndef _LIB_BUILD
asm("TMR0H equ 0FD7h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned TMR0H                  :8;
    };
} TMR0Hbits_t;
extern volatile TMR0Hbits_t TMR0Hbits @ 0xFD7;
// bitfield macros
#define _TMR0H_TMR0H_POSN                                   0x0
#define _TMR0H_TMR0H_POSITION                               0x0
#define _TMR0H_TMR0H_SIZE                                   0x8
#define _TMR0H_TMR0H_LENGTH                                 0x8
#define _TMR0H_TMR0H_MASK                                   0xFF

// Register: STATUS
extern volatile unsigned char           STATUS              @ 0xFD8;
#ifndef _LIB_BUILD
asm("STATUS equ 0FD8h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned C                      :1;
        unsigned DC                     :1;
        unsigned Z                      :1;
        unsigned OV                     :1;
        unsigned N                      :1;
    };
    struct {
        unsigned CARRY                  :1;
        unsigned                        :1;
        unsigned ZERO                   :1;
        unsigned OVERFLOW               :1;
        unsigned NEGATIVE               :1;
    };
} STATUSbits_t;
extern volatile STATUSbits_t STATUSbits @ 0xFD8;
// bitfield macros
#define _STATUS_C_POSN                                      0x0
#define _STATUS_C_POSITION                                  0x0
#define _STATUS_C_SIZE                                      0x1
#define _STATUS_C_LENGTH                                    0x1
#define _STATUS_C_MASK                                      0x1
#define _STATUS_DC_POSN                                     0x1
#define _STATUS_DC_POSITION                                 0x1
#define _STATUS_DC_SIZE                                     0x1
#define _STATUS_DC_LENGTH                                   0x1
#define _STATUS_DC_MASK                                     0x2
#define _STATUS_Z_POSN                                      0x2
#define _STATUS_Z_POSITION                                  0x2
#define _STATUS_Z_SIZE                                      0x1
#define _STATUS_Z_LENGTH                                    0x1
#define _STATUS_Z_MASK                                      0x4
#define _STATUS_OV_POSN                                     0x3
#define _STATUS_OV_POSITION                                 0x3
#define _STATUS_OV_SIZE                                     0x1
#define _STATUS_OV_LENGTH                                   0x1
#define _STATUS_OV_MASK                                     0x8
#define _STATUS_N_POSN                                      0x4
#define _STATUS_N_POSITION                                  0x4
#define _STATUS_N_SIZE                                      0x1
#define _STATUS_N_LENGTH                                    0x1
#define _STATUS_N_MASK                                      0x10
#define _STATUS_CARRY_POSN                                  0x0
#define _STATUS_CARRY_POSITION                              0x0
#define _STATUS_CARRY_SIZE                                  0x1
#define _STATUS_CARRY_LENGTH                                0x1
#define _STATUS_CARRY_MASK                                  0x1
#define _STATUS_ZERO_POSN                                   0x2
#define _STATUS_ZERO_POSITION                               0x2
#define _STATUS_ZERO_SIZE                                   0x1
#define _STATUS_ZERO_LENGTH                                 0x1
#define _STATUS_ZERO_MASK                                   0x4
#define _STATUS_OVERFLOW_POSN                               0x3
#define _STATUS_OVERFLOW_POSITION                           0x3
#define _STATUS_OVERFLOW_SIZE                               0x1
#define _STATUS_OVERFLOW_LENGTH                             0x1
#define _STATUS_OVERFLOW_MASK                               0x8
#define _STATUS_NEGATIVE_POSN                               0x4
#define _STATUS_NEGATIVE_POSITION                           0x4
#define _STATUS_NEGATIVE_SIZE                               0x1
#define _STATUS_NEGATIVE_LENGTH                             0x1
#define _STATUS_NEGATIVE_MASK                               0x10

// Register: FSR2
extern volatile unsigned short          FSR2                @ 0xFD9;
#ifndef _LIB_BUILD
asm("FSR2 equ 0FD9h");
#endif

// Register: FSR2L
extern volatile unsigned char           FSR2L               @ 0xFD9;
#ifndef _LIB_BUILD
asm("FSR2L equ 0FD9h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned FSR2L                  :8;
    };
} FSR2Lbits_t;
extern volatile FSR2Lbits_t FSR2Lbits @ 0xFD9;
// bitfield macros
#define _FSR2L_FSR2L_POSN                                   0x0
#define _FSR2L_FSR2L_POSITION                               0x0
#define _FSR2L_FSR2L_SIZE                                   0x8
#define _FSR2L_FSR2L_LENGTH                                 0x8
#define _FSR2L_FSR2L_MASK                                   0xFF

// Register: FSR2H
extern volatile unsigned char           FSR2H               @ 0xFDA;
#ifndef _LIB_BUILD
asm("FSR2H equ 0FDAh");
#endif

// Register: PLUSW2
extern volatile unsigned char           PLUSW2              @ 0xFDB;
#ifndef _LIB_BUILD
asm("PLUSW2 equ 0FDBh");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned PLUSW2                 :8;
    };
} PLUSW2bits_t;
extern volatile PLUSW2bits_t PLUSW2bits @ 0xFDB;
// bitfield macros
#define _PLUSW2_PLUSW2_POSN                                 0x0
#define _PLUSW2_PLUSW2_POSITION                             0x0
#define _PLUSW2_PLUSW2_SIZE                                 0x8
#define _PLUSW2_PLUSW2_LENGTH                               0x8
#define _PLUSW2_PLUSW2_MASK                                 0xFF

// Register: PREINC2
extern volatile unsigned char           PREINC2             @ 0xFDC;
#ifndef _LIB_BUILD
asm("PREINC2 equ 0FDCh");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned PREINC2                :8;
    };
} PREINC2bits_t;
extern volatile PREINC2bits_t PREINC2bits @ 0xFDC;
// bitfield macros
#define _PREINC2_PREINC2_POSN                               0x0
#define _PREINC2_PREINC2_POSITION                           0x0
#define _PREINC2_PREINC2_SIZE                               0x8
#define _PREINC2_PREINC2_LENGTH                             0x8
#define _PREINC2_PREINC2_MASK                               0xFF

// Register: POSTDEC2
extern volatile unsigned char           POSTDEC2            @ 0xFDD;
#ifndef _LIB_BUILD
asm("POSTDEC2 equ 0FDDh");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned POSTDEC2               :8;
    };
} POSTDEC2bits_t;
extern volatile POSTDEC2bits_t POSTDEC2bits @ 0xFDD;
// bitfield macros
#define _POSTDEC2_POSTDEC2_POSN                             0x0
#define _POSTDEC2_POSTDEC2_POSITION                         0x0
#define _POSTDEC2_POSTDEC2_SIZE                             0x8
#define _POSTDEC2_POSTDEC2_LENGTH                           0x8
#define _POSTDEC2_POSTDEC2_MASK                             0xFF

// Register: POSTINC2
extern volatile unsigned char           POSTINC2            @ 0xFDE;
#ifndef _LIB_BUILD
asm("POSTINC2 equ 0FDEh");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned POSTINC2               :8;
    };
} POSTINC2bits_t;
extern volatile POSTINC2bits_t POSTINC2bits @ 0xFDE;
// bitfield macros
#define _POSTINC2_POSTINC2_POSN                             0x0
#define _POSTINC2_POSTINC2_POSITION                         0x0
#define _POSTINC2_POSTINC2_SIZE                             0x8
#define _POSTINC2_POSTINC2_LENGTH                           0x8
#define _POSTINC2_POSTINC2_MASK                             0xFF

// Register: INDF2
extern volatile unsigned char           INDF2               @ 0xFDF;
#ifndef _LIB_BUILD
asm("INDF2 equ 0FDFh");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned INDF2                  :8;
    };
} INDF2bits_t;
extern volatile INDF2bits_t INDF2bits @ 0xFDF;
// bitfield macros
#define _INDF2_INDF2_POSN                                   0x0
#define _INDF2_INDF2_POSITION                               0x0
#define _INDF2_INDF2_SIZE                                   0x8
#define _INDF2_INDF2_LENGTH                                 0x8
#define _INDF2_INDF2_MASK                                   0xFF

// Register: BSR
extern volatile unsigned char           BSR                 @ 0xFE0;
#ifndef _LIB_BUILD
asm("BSR equ 0FE0h");
#endif

// Register: FSR1
extern volatile unsigned short          FSR1                @ 0xFE1;
#ifndef _LIB_BUILD
asm("FSR1 equ 0FE1h");
#endif

// Register: FSR1L
extern volatile unsigned char           FSR1L               @ 0xFE1;
#ifndef _LIB_BUILD
asm("FSR1L equ 0FE1h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned FSR1L                  :8;
    };
} FSR1Lbits_t;
extern volatile FSR1Lbits_t FSR1Lbits @ 0xFE1;
// bitfield macros
#define _FSR1L_FSR1L_POSN                                   0x0
#define _FSR1L_FSR1L_POSITION                               0x0
#define _FSR1L_FSR1L_SIZE                                   0x8
#define _FSR1L_FSR1L_LENGTH                                 0x8
#define _FSR1L_FSR1L_MASK                                   0xFF

// Register: FSR1H
extern volatile unsigned char           FSR1H               @ 0xFE2;
#ifndef _LIB_BUILD
asm("FSR1H equ 0FE2h");
#endif

// Register: PLUSW1
extern volatile unsigned char           PLUSW1              @ 0xFE3;
#ifndef _LIB_BUILD
asm("PLUSW1 equ 0FE3h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned PLUSW1                 :8;
    };
} PLUSW1bits_t;
extern volatile PLUSW1bits_t PLUSW1bits @ 0xFE3;
// bitfield macros
#define _PLUSW1_PLUSW1_POSN                                 0x0
#define _PLUSW1_PLUSW1_POSITION                             0x0
#define _PLUSW1_PLUSW1_SIZE                                 0x8
#define _PLUSW1_PLUSW1_LENGTH                               0x8
#define _PLUSW1_PLUSW1_MASK                                 0xFF

// Register: PREINC1
extern volatile unsigned char           PREINC1             @ 0xFE4;
#ifndef _LIB_BUILD
asm("PREINC1 equ 0FE4h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned PREINC1                :8;
    };
} PREINC1bits_t;
extern volatile PREINC1bits_t PREINC1bits @ 0xFE4;
// bitfield macros
#define _PREINC1_PREINC1_POSN                               0x0
#define _PREINC1_PREINC1_POSITION                           0x0
#define _PREINC1_PREINC1_SIZE                               0x8
#define _PREINC1_PREINC1_LENGTH                             0x8
#define _PREINC1_PREINC1_MASK                               0xFF

// Register: POSTDEC1
extern volatile unsigned char           POSTDEC1            @ 0xFE5;
#ifndef _LIB_BUILD
asm("POSTDEC1 equ 0FE5h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned POSTDEC1               :8;
    };
} POSTDEC1bits_t;
extern volatile POSTDEC1bits_t POSTDEC1bits @ 0xFE5;
// bitfield macros
#define _POSTDEC1_POSTDEC1_POSN                             0x0
#define _POSTDEC1_POSTDEC1_POSITION                         0x0
#define _POSTDEC1_POSTDEC1_SIZE                             0x8
#define _POSTDEC1_POSTDEC1_LENGTH                           0x8
#define _POSTDEC1_POSTDEC1_MASK                             0xFF

// Register: POSTINC1
extern volatile unsigned char           POSTINC1            @ 0xFE6;
#ifndef _LIB_BUILD
asm("POSTINC1 equ 0FE6h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned POSTINC1               :8;
    };
} POSTINC1bits_t;
extern volatile POSTINC1bits_t POSTINC1bits @ 0xFE6;
// bitfield macros
#define _POSTINC1_POSTINC1_POSN                             0x0
#define _POSTINC1_POSTINC1_POSITION                         0x0
#define _POSTINC1_POSTINC1_SIZE                             0x8
#define _POSTINC1_POSTINC1_LENGTH                           0x8
#define _POSTINC1_POSTINC1_MASK                             0xFF

// Register: INDF1
extern volatile unsigned char           INDF1               @ 0xFE7;
#ifndef _LIB_BUILD
asm("INDF1 equ 0FE7h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned INDF1                  :8;
    };
} INDF1bits_t;
extern volatile INDF1bits_t INDF1bits @ 0xFE7;
// bitfield macros
#define _INDF1_INDF1_POSN                                   0x0
#define _INDF1_INDF1_POSITION                               0x0
#define _INDF1_INDF1_SIZE                                   0x8
#define _INDF1_INDF1_LENGTH                                 0x8
#define _INDF1_INDF1_MASK                                   0xFF

// Register: WREG
extern volatile unsigned char           WREG                @ 0xFE8;
#ifndef _LIB_BUILD
asm("WREG equ 0FE8h");
#endif
// aliases
// extern volatile unsigned char           W                   @ 0xFE8;
#ifndef _LIB_BUILD
// asm("W equ 0FE8h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned WREG                   :8;
    };
} WREGbits_t;
extern volatile WREGbits_t WREGbits @ 0xFE8;
// bitfield macros
#define _WREG_WREG_POSN                                     0x0
#define _WREG_WREG_POSITION                                 0x0
#define _WREG_WREG_SIZE                                     0x8
#define _WREG_WREG_LENGTH                                   0x8
#define _WREG_WREG_MASK                                     0xFF
// alias bitfield definitions
typedef union {
    struct {
        unsigned WREG                   :8;
    };
} Wbits_t;
extern volatile Wbits_t Wbits @ 0xFE8;
// bitfield macros
#define _W_WREG_POSN                                        0x0
#define _W_WREG_POSITION                                    0x0
#define _W_WREG_SIZE                                        0x8
#define _W_WREG_LENGTH                                      0x8
#define _W_WREG_MASK                                        0xFF

// Register: FSR0
extern volatile unsigned short          FSR0                @ 0xFE9;
#ifndef _LIB_BUILD
asm("FSR0 equ 0FE9h");
#endif

// Register: FSR0L
extern volatile unsigned char           FSR0L               @ 0xFE9;
#ifndef _LIB_BUILD
asm("FSR0L equ 0FE9h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned FSR0L                  :8;
    };
} FSR0Lbits_t;
extern volatile FSR0Lbits_t FSR0Lbits @ 0xFE9;
// bitfield macros
#define _FSR0L_FSR0L_POSN                                   0x0
#define _FSR0L_FSR0L_POSITION                               0x0
#define _FSR0L_FSR0L_SIZE                                   0x8
#define _FSR0L_FSR0L_LENGTH                                 0x8
#define _FSR0L_FSR0L_MASK                                   0xFF

// Register: FSR0H
extern volatile unsigned char           FSR0H               @ 0xFEA;
#ifndef _LIB_BUILD
asm("FSR0H equ 0FEAh");
#endif

// Register: PLUSW0
extern volatile unsigned char           PLUSW0              @ 0xFEB;
#ifndef _LIB_BUILD
asm("PLUSW0 equ 0FEBh");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned PLUSW0                 :8;
    };
} PLUSW0bits_t;
extern volatile PLUSW0bits_t PLUSW0bits @ 0xFEB;
// bitfield macros
#define _PLUSW0_PLUSW0_POSN                                 0x0
#define _PLUSW0_PLUSW0_POSITION                             0x0
#define _PLUSW0_PLUSW0_SIZE                                 0x8
#define _PLUSW0_PLUSW0_LENGTH                               0x8
#define _PLUSW0_PLUSW0_MASK                                 0xFF

// Register: PREINC0
extern volatile unsigned char           PREINC0             @ 0xFEC;
#ifndef _LIB_BUILD
asm("PREINC0 equ 0FECh");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned PREINC0                :8;
    };
} PREINC0bits_t;
extern volatile PREINC0bits_t PREINC0bits @ 0xFEC;
// bitfield macros
#define _PREINC0_PREINC0_POSN                               0x0
#define _PREINC0_PREINC0_POSITION                           0x0
#define _PREINC0_PREINC0_SIZE                               0x8
#define _PREINC0_PREINC0_LENGTH                             0x8
#define _PREINC0_PREINC0_MASK                               0xFF

// Register: POSTDEC0
extern volatile unsigned char           POSTDEC0            @ 0xFED;
#ifndef _LIB_BUILD
asm("POSTDEC0 equ 0FEDh");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned POSTDEC0               :8;
    };
} POSTDEC0bits_t;
extern volatile POSTDEC0bits_t POSTDEC0bits @ 0xFED;
// bitfield macros
#define _POSTDEC0_POSTDEC0_POSN                             0x0
#define _POSTDEC0_POSTDEC0_POSITION                         0x0
#define _POSTDEC0_POSTDEC0_SIZE                             0x8
#define _POSTDEC0_POSTDEC0_LENGTH                           0x8
#define _POSTDEC0_POSTDEC0_MASK                             0xFF

// Register: POSTINC0
extern volatile unsigned char           POSTINC0            @ 0xFEE;
#ifndef _LIB_BUILD
asm("POSTINC0 equ 0FEEh");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned POSTINC0               :8;
    };
} POSTINC0bits_t;
extern volatile POSTINC0bits_t POSTINC0bits @ 0xFEE;
// bitfield macros
#define _POSTINC0_POSTINC0_POSN                             0x0
#define _POSTINC0_POSTINC0_POSITION                         0x0
#define _POSTINC0_POSTINC0_SIZE                             0x8
#define _POSTINC0_POSTINC0_LENGTH                           0x8
#define _POSTINC0_POSTINC0_MASK                             0xFF

// Register: INDF0
extern volatile unsigned char           INDF0               @ 0xFEF;
#ifndef _LIB_BUILD
asm("INDF0 equ 0FEFh");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned INDF0                  :8;
    };
} INDF0bits_t;
extern volatile INDF0bits_t INDF0bits @ 0xFEF;
// bitfield macros
#define _INDF0_INDF0_POSN                                   0x0
#define _INDF0_INDF0_POSITION                               0x0
#define _INDF0_INDF0_SIZE                                   0x8
#define _INDF0_INDF0_LENGTH                                 0x8
#define _INDF0_INDF0_MASK                                   0xFF

// Register: INTCON3
extern volatile unsigned char           INTCON3             @ 0xFF0;
#ifndef _LIB_BUILD
asm("INTCON3 equ 0FF0h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned INT1IF                 :1;
        unsigned INT2IF                 :1;
        unsigned                        :1;
        unsigned INT1IE                 :1;
        unsigned INT2IE                 :1;
        unsigned                        :1;
        unsigned INT1IP                 :1;
        unsigned INT2IP                 :1;
    };
    struct {
        unsigned INT1F                  :1;
        unsigned INT2F                  :1;
        unsigned                        :1;
        unsigned INT1E                  :1;
        unsigned INT2E                  :1;
        unsigned                        :1;
        unsigned INT1P                  :1;
        unsigned INT2P                  :1;
    };
} INTCON3bits_t;
extern volatile INTCON3bits_t INTCON3bits @ 0xFF0;
// bitfield macros
#define _INTCON3_INT1IF_POSN                                0x0
#define _INTCON3_INT1IF_POSITION                            0x0
#define _INTCON3_INT1IF_SIZE                                0x1
#define _INTCON3_INT1IF_LENGTH                              0x1
#define _INTCON3_INT1IF_MASK                                0x1
#define _INTCON3_INT2IF_POSN                                0x1
#define _INTCON3_INT2IF_POSITION                            0x1
#define _INTCON3_INT2IF_SIZE                                0x1
#define _INTCON3_INT2IF_LENGTH                              0x1
#define _INTCON3_INT2IF_MASK                                0x2
#define _INTCON3_INT1IE_POSN                                0x3
#define _INTCON3_INT1IE_POSITION                            0x3
#define _INTCON3_INT1IE_SIZE                                0x1
#define _INTCON3_INT1IE_LENGTH                              0x1
#define _INTCON3_INT1IE_MASK                                0x8
#define _INTCON3_INT2IE_POSN                                0x4
#define _INTCON3_INT2IE_POSITION                            0x4
#define _INTCON3_INT2IE_SIZE                                0x1
#define _INTCON3_INT2IE_LENGTH                              0x1
#define _INTCON3_INT2IE_MASK                                0x10
#define _INTCON3_INT1IP_POSN                                0x6
#define _INTCON3_INT1IP_POSITION                            0x6
#define _INTCON3_INT1IP_SIZE                                0x1
#define _INTCON3_INT1IP_LENGTH                              0x1
#define _INTCON3_INT1IP_MASK                                0x40
#define _INTCON3_INT2IP_POSN                                0x7
#define _INTCON3_INT2IP_POSITION                            0x7
#define _INTCON3_INT2IP_SIZE                                0x1
#define _INTCON3_INT2IP_LENGTH                              0x1
#define _INTCON3_INT2IP_MASK                                0x80
#define _INTCON3_INT1F_POSN                                 0x0
#define _INTCON3_INT1F_POSITION                             0x0
#define _INTCON3_INT1F_SIZE                                 0x1
#define _INTCON3_INT1F_LENGTH                               0x1
#define _INTCON3_INT1F_MASK                                 0x1
#define _INTCON3_INT2F_POSN                                 0x1
#define _INTCON3_INT2F_POSITION                             0x1
#define _INTCON3_INT2F_SIZE                                 0x1
#define _INTCON3_INT2F_LENGTH                               0x1
#define _INTCON3_INT2F_MASK                                 0x2
#define _INTCON3_INT1E_POSN                                 0x3
#define _INTCON3_INT1E_POSITION                             0x3
#define _INTCON3_INT1E_SIZE                                 0x1
#define _INTCON3_INT1E_LENGTH                               0x1
#define _INTCON3_INT1E_MASK                                 0x8
#define _INTCON3_INT2E_POSN                                 0x4
#define _INTCON3_INT2E_POSITION                             0x4
#define _INTCON3_INT2E_SIZE                                 0x1
#define _INTCON3_INT2E_LENGTH                               0x1
#define _INTCON3_INT2E_MASK                                 0x10
#define _INTCON3_INT1P_POSN                                 0x6
#define _INTCON3_INT1P_POSITION                             0x6
#define _INTCON3_INT1P_SIZE                                 0x1
#define _INTCON3_INT1P_LENGTH                               0x1
#define _INTCON3_INT1P_MASK                                 0x40
#define _INTCON3_INT2P_POSN                                 0x7
#define _INTCON3_INT2P_POSITION                             0x7
#define _INTCON3_INT2P_SIZE                                 0x1
#define _INTCON3_INT2P_LENGTH                               0x1
#define _INTCON3_INT2P_MASK                                 0x80

// Register: INTCON2
extern volatile unsigned char           INTCON2             @ 0xFF1;
#ifndef _LIB_BUILD
asm("INTCON2 equ 0FF1h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned                        :7;
        unsigned NOT_RBPU               :1;
    };
    struct {
        unsigned RBIP                   :1;
        unsigned                        :1;
        unsigned TMR0IP                 :1;
        unsigned                        :1;
        unsigned INTEDG2                :1;
        unsigned INTEDG1                :1;
        unsigned INTEDG0                :1;
        unsigned nRBPU                  :1;
    };
    struct {
        unsigned                        :7;
        unsigned RBPU                   :1;
    };
} INTCON2bits_t;
extern volatile INTCON2bits_t INTCON2bits @ 0xFF1;
// bitfield macros
#define _INTCON2_NOT_RBPU_POSN                              0x7
#define _INTCON2_NOT_RBPU_POSITION                          0x7
#define _INTCON2_NOT_RBPU_SIZE                              0x1
#define _INTCON2_NOT_RBPU_LENGTH                            0x1
#define _INTCON2_NOT_RBPU_MASK                              0x80
#define _INTCON2_RBIP_POSN                                  0x0
#define _INTCON2_RBIP_POSITION                              0x0
#define _INTCON2_RBIP_SIZE                                  0x1
#define _INTCON2_RBIP_LENGTH                                0x1
#define _INTCON2_RBIP_MASK                                  0x1
#define _INTCON2_TMR0IP_POSN                                0x2
#define _INTCON2_TMR0IP_POSITION                            0x2
#define _INTCON2_TMR0IP_SIZE                                0x1
#define _INTCON2_TMR0IP_LENGTH                              0x1
#define _INTCON2_TMR0IP_MASK                                0x4
#define _INTCON2_INTEDG2_POSN                               0x4
#define _INTCON2_INTEDG2_POSITION                           0x4
#define _INTCON2_INTEDG2_SIZE                               0x1
#define _INTCON2_INTEDG2_LENGTH                             0x1
#define _INTCON2_INTEDG2_MASK                               0x10
#define _INTCON2_INTEDG1_POSN                               0x5
#define _INTCON2_INTEDG1_POSITION                           0x5
#define _INTCON2_INTEDG1_SIZE                               0x1
#define _INTCON2_INTEDG1_LENGTH                             0x1
#define _INTCON2_INTEDG1_MASK                               0x20
#define _INTCON2_INTEDG0_POSN                               0x6
#define _INTCON2_INTEDG0_POSITION                           0x6
#define _INTCON2_INTEDG0_SIZE                               0x1
#define _INTCON2_INTEDG0_LENGTH                             0x1
#define _INTCON2_INTEDG0_MASK                               0x40
#define _INTCON2_nRBPU_POSN                                 0x7
#define _INTCON2_nRBPU_POSITION                             0x7
#define _INTCON2_nRBPU_SIZE                                 0x1
#define _INTCON2_nRBPU_LENGTH                               0x1
#define _INTCON2_nRBPU_MASK                                 0x80
#define _INTCON2_RBPU_POSN                                  0x7
#define _INTCON2_RBPU_POSITION                              0x7
#define _INTCON2_RBPU_SIZE                                  0x1
#define _INTCON2_RBPU_LENGTH                                0x1
#define _INTCON2_RBPU_MASK                                  0x80

// Register: INTCON
extern volatile unsigned char           INTCON              @ 0xFF2;
#ifndef _LIB_BUILD
asm("INTCON equ 0FF2h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned RBIF                   :1;
        unsigned INT0IF                 :1;
        unsigned TMR0IF                 :1;
        unsigned RBIE                   :1;
        unsigned INT0IE                 :1;
        unsigned TMR0IE                 :1;
        unsigned PEIE_GIEL              :1;
        unsigned GIE_GIEH               :1;
    };
    struct {
        unsigned                        :1;
        unsigned INT0F                  :1;
        unsigned T0IF                   :1;
        unsigned                        :1;
        unsigned INT0E                  :1;
        unsigned T0IE                   :1;
        unsigned PEIE                   :1;
        unsigned GIE                    :1;
    };
    struct {
        unsigned                        :6;
        unsigned GIEL                   :1;
        unsigned GIEH                   :1;
    };
} INTCONbits_t;
extern volatile INTCONbits_t INTCONbits @ 0xFF2;
// bitfield macros
#define _INTCON_RBIF_POSN                                   0x0
#define _INTCON_RBIF_POSITION                               0x0
#define _INTCON_RBIF_SIZE                                   0x1
#define _INTCON_RBIF_LENGTH                                 0x1
#define _INTCON_RBIF_MASK                                   0x1
#define _INTCON_INT0IF_POSN                                 0x1
#define _INTCON_INT0IF_POSITION                             0x1
#define _INTCON_INT0IF_SIZE                                 0x1
#define _INTCON_INT0IF_LENGTH                               0x1
#define _INTCON_INT0IF_MASK                                 0x2
#define _INTCON_TMR0IF_POSN                                 0x2
#define _INTCON_TMR0IF_POSITION                             0x2
#define _INTCON_TMR0IF_SIZE                                 0x1
#define _INTCON_TMR0IF_LENGTH                               0x1
#define _INTCON_TMR0IF_MASK                                 0x4
#define _INTCON_RBIE_POSN                                   0x3
#define _INTCON_RBIE_POSITION                               0x3
#define _INTCON_RBIE_SIZE                                   0x1
#define _INTCON_RBIE_LENGTH                                 0x1
#define _INTCON_RBIE_MASK                                   0x8
#define _INTCON_INT0IE_POSN                                 0x4
#define _INTCON_INT0IE_POSITION                             0x4
#define _INTCON_INT0IE_SIZE                                 0x1
#define _INTCON_INT0IE_LENGTH                               0x1
#define _INTCON_INT0IE_MASK                                 0x10
#define _INTCON_TMR0IE_POSN                                 0x5
#define _INTCON_TMR0IE_POSITION                             0x5
#define _INTCON_TMR0IE_SIZE                                 0x1
#define _INTCON_TMR0IE_LENGTH                               0x1
#define _INTCON_TMR0IE_MASK                                 0x20
#define _INTCON_PEIE_GIEL_POSN                              0x6
#define _INTCON_PEIE_GIEL_POSITION                          0x6
#define _INTCON_PEIE_GIEL_SIZE                              0x1
#define _INTCON_PEIE_GIEL_LENGTH                            0x1
#define _INTCON_PEIE_GIEL_MASK                              0x40
#define _INTCON_GIE_GIEH_POSN                               0x7
#define _INTCON_GIE_GIEH_POSITION                           0x7
#define _INTCON_GIE_GIEH_SIZE                               0x1
#define _INTCON_GIE_GIEH_LENGTH                             0x1
#define _INTCON_GIE_GIEH_MASK                               0x80
#define _INTCON_INT0F_POSN                                  0x1
#define _INTCON_INT0F_POSITION                              0x1
#define _INTCON_INT0F_SIZE                                  0x1
#define _INTCON_INT0F_LENGTH                                0x1
#define _INTCON_INT0F_MASK                                  0x2
#define _INTCON_T0IF_POSN                                   0x2
#define _INTCON_T0IF_POSITION                               0x2
#define _INTCON_T0IF_SIZE                                   0x1
#define _INTCON_T0IF_LENGTH                                 0x1
#define _INTCON_T0IF_MASK                                   0x4
#define _INTCON_INT0E_POSN                                  0x4
#define _INTCON_INT0E_POSITION                              0x4
#define _INTCON_INT0E_SIZE                                  0x1
#define _INTCON_INT0E_LENGTH                                0x1
#define _INTCON_INT0E_MASK                                  0x10
#define _INTCON_T0IE_POSN                                   0x5
#define _INTCON_T0IE_POSITION                               0x5
#define _INTCON_T0IE_SIZE                                   0x1
#define _INTCON_T0IE_LENGTH                                 0x1
#define _INTCON_T0IE_MASK                                   0x20
#define _INTCON_PEIE_POSN                                   0x6
#define _INTCON_PEIE_POSITION                               0x6
#define _INTCON_PEIE_SIZE                                   0x1
#define _INTCON_PEIE_LENGTH                                 0x1
#define _INTCON_PEIE_MASK                                   0x40
#define _INTCON_GIE_POSN                                    0x7
#define _INTCON_GIE_POSITION                                0x7
#define _INTCON_GIE_SIZE                                    0x1
#define _INTCON_GIE_LENGTH                                  0x1
#define _INTCON_GIE_MASK                                    0x80
#define _INTCON_GIEL_POSN                                   0x6
#define _INTCON_GIEL_POSITION                               0x6
#define _INTCON_GIEL_SIZE                                   0x1
#define _INTCON_GIEL_LENGTH                                 0x1
#define _INTCON_GIEL_MASK                                   0x40
#define _INTCON_GIEH_POSN                                   0x7
#define _INTCON_GIEH_POSITION                               0x7
#define _INTCON_GIEH_SIZE                                   0x1
#define _INTCON_GIEH_LENGTH                                 0x1
#define _INTCON_GIEH_MASK                                   0x80

// Register: PROD
extern volatile unsigned short          PROD                @ 0xFF3;
#ifndef _LIB_BUILD
asm("PROD equ 0FF3h");
#endif

// Register: PRODL
extern volatile unsigned char           PRODL               @ 0xFF3;
#ifndef _LIB_BUILD
asm("PRODL equ 0FF3h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned PRODL                  :8;
    };
} PRODLbits_t;
extern volatile PRODLbits_t PRODLbits @ 0xFF3;
// bitfield macros
#define _PRODL_PRODL_POSN                                   0x0
#define _PRODL_PRODL_POSITION                               0x0
#define _PRODL_PRODL_SIZE                                   0x8
#define _PRODL_PRODL_LENGTH                                 0x8
#define _PRODL_PRODL_MASK                                   0xFF

// Register: PRODH
extern volatile unsigned char           PRODH               @ 0xFF4;
#ifndef _LIB_BUILD
asm("PRODH equ 0FF4h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned PRODH                  :8;
    };
} PRODHbits_t;
extern volatile PRODHbits_t PRODHbits @ 0xFF4;
// bitfield macros
#define _PRODH_PRODH_POSN                                   0x0
#define _PRODH_PRODH_POSITION                               0x0
#define _PRODH_PRODH_SIZE                                   0x8
#define _PRODH_PRODH_LENGTH                                 0x8
#define _PRODH_PRODH_MASK                                   0xFF

// Register: TABLAT
extern volatile unsigned char           TABLAT              @ 0xFF5;
#ifndef _LIB_BUILD
asm("TABLAT equ 0FF5h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned TABLAT                 :8;
    };
} TABLATbits_t;
extern volatile TABLATbits_t TABLATbits @ 0xFF5;
// bitfield macros
#define _TABLAT_TABLAT_POSN                                 0x0
#define _TABLAT_TABLAT_POSITION                             0x0
#define _TABLAT_TABLAT_SIZE                                 0x8
#define _TABLAT_TABLAT_LENGTH                               0x8
#define _TABLAT_TABLAT_MASK                                 0xFF

// Register: TBLPTR
#ifndef __CCI__
extern volatile unsigned short long     TBLPTR              @ 0xFF6;
#endif
#ifndef _LIB_BUILD
asm("TBLPTR equ 0FF6h");
#endif

// Register: TBLPTRL
extern volatile unsigned char           TBLPTRL             @ 0xFF6;
#ifndef _LIB_BUILD
asm("TBLPTRL equ 0FF6h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned TBLPTRL                :8;
    };
} TBLPTRLbits_t;
extern volatile TBLPTRLbits_t TBLPTRLbits @ 0xFF6;
// bitfield macros
#define _TBLPTRL_TBLPTRL_POSN                               0x0
#define _TBLPTRL_TBLPTRL_POSITION                           0x0
#define _TBLPTRL_TBLPTRL_SIZE                               0x8
#define _TBLPTRL_TBLPTRL_LENGTH                             0x8
#define _TBLPTRL_TBLPTRL_MASK                               0xFF

// Register: TBLPTRH
extern volatile unsigned char           TBLPTRH             @ 0xFF7;
#ifndef _LIB_BUILD
asm("TBLPTRH equ 0FF7h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned TBLPTRH                :8;
    };
} TBLPTRHbits_t;
extern volatile TBLPTRHbits_t TBLPTRHbits @ 0xFF7;
// bitfield macros
#define _TBLPTRH_TBLPTRH_POSN                               0x0
#define _TBLPTRH_TBLPTRH_POSITION                           0x0
#define _TBLPTRH_TBLPTRH_SIZE                               0x8
#define _TBLPTRH_TBLPTRH_LENGTH                             0x8
#define _TBLPTRH_TBLPTRH_MASK                               0xFF

// Register: TBLPTRU
extern volatile unsigned char           TBLPTRU             @ 0xFF8;
#ifndef _LIB_BUILD
asm("TBLPTRU equ 0FF8h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned TBLPTRU                :6;
    };
    struct {
        unsigned                        :5;
        unsigned ACSS                   :1;
    };
} TBLPTRUbits_t;
extern volatile TBLPTRUbits_t TBLPTRUbits @ 0xFF8;
// bitfield macros
#define _TBLPTRU_TBLPTRU_POSN                               0x0
#define _TBLPTRU_TBLPTRU_POSITION                           0x0
#define _TBLPTRU_TBLPTRU_SIZE                               0x6
#define _TBLPTRU_TBLPTRU_LENGTH                             0x6
#define _TBLPTRU_TBLPTRU_MASK                               0x3F
#define _TBLPTRU_ACSS_POSN                                  0x5
#define _TBLPTRU_ACSS_POSITION                              0x5
#define _TBLPTRU_ACSS_SIZE                                  0x1
#define _TBLPTRU_ACSS_LENGTH                                0x1
#define _TBLPTRU_ACSS_MASK                                  0x20

// Register: PCLAT
#ifndef __CCI__
extern volatile unsigned short long     PCLAT               @ 0xFF9;
#endif
#ifndef _LIB_BUILD
asm("PCLAT equ 0FF9h");
#endif
// aliases
#ifndef __CCI__
extern volatile unsigned short long     PC                  @ 0xFF9;
#endif
#ifndef _LIB_BUILD
asm("PC equ 0FF9h");
#endif

// Register: PCL
extern volatile unsigned char           PCL                 @ 0xFF9;
#ifndef _LIB_BUILD
asm("PCL equ 0FF9h");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned PCL                    :8;
    };
} PCLbits_t;
extern volatile PCLbits_t PCLbits @ 0xFF9;
// bitfield macros
#define _PCL_PCL_POSN                                       0x0
#define _PCL_PCL_POSITION                                   0x0
#define _PCL_PCL_SIZE                                       0x8
#define _PCL_PCL_LENGTH                                     0x8
#define _PCL_PCL_MASK                                       0xFF

// Register: PCLATH
extern volatile unsigned char           PCLATH              @ 0xFFA;
#ifndef _LIB_BUILD
asm("PCLATH equ 0FFAh");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned PCH                    :8;
    };
} PCLATHbits_t;
extern volatile PCLATHbits_t PCLATHbits @ 0xFFA;
// bitfield macros
#define _PCLATH_PCH_POSN                                    0x0
#define _PCLATH_PCH_POSITION                                0x0
#define _PCLATH_PCH_SIZE                                    0x8
#define _PCLATH_PCH_LENGTH                                  0x8
#define _PCLATH_PCH_MASK                                    0xFF

// Register: PCLATU
extern volatile unsigned char           PCLATU              @ 0xFFB;
#ifndef _LIB_BUILD
asm("PCLATU equ 0FFBh");
#endif

// Register: STKPTR
extern volatile unsigned char           STKPTR              @ 0xFFC;
#ifndef _LIB_BUILD
asm("STKPTR equ 0FFCh");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned STKPTR                 :5;
        unsigned                        :1;
        unsigned STKUNF                 :1;
        unsigned STKFUL                 :1;
    };
    struct {
        unsigned STKPTR0                :1;
        unsigned STKPTR1                :1;
        unsigned STKPTR2                :1;
        unsigned STKPTR3                :1;
        unsigned STKPTR4                :1;
        unsigned                        :2;
        unsigned STKOVF                 :1;
    };
    struct {
        unsigned SP0                    :1;
        unsigned SP1                    :1;
        unsigned SP2                    :1;
        unsigned SP3                    :1;
        unsigned SP4                    :1;
    };
} STKPTRbits_t;
extern volatile STKPTRbits_t STKPTRbits @ 0xFFC;
// bitfield macros
#define _STKPTR_STKPTR_POSN                                 0x0
#define _STKPTR_STKPTR_POSITION                             0x0
#define _STKPTR_STKPTR_SIZE                                 0x5
#define _STKPTR_STKPTR_LENGTH                               0x5
#define _STKPTR_STKPTR_MASK                                 0x1F
#define _STKPTR_STKUNF_POSN                                 0x6
#define _STKPTR_STKUNF_POSITION                             0x6
#define _STKPTR_STKUNF_SIZE                                 0x1
#define _STKPTR_STKUNF_LENGTH                               0x1
#define _STKPTR_STKUNF_MASK                                 0x40
#define _STKPTR_STKFUL_POSN                                 0x7
#define _STKPTR_STKFUL_POSITION                             0x7
#define _STKPTR_STKFUL_SIZE                                 0x1
#define _STKPTR_STKFUL_LENGTH                               0x1
#define _STKPTR_STKFUL_MASK                                 0x80
#define _STKPTR_STKPTR0_POSN                                0x0
#define _STKPTR_STKPTR0_POSITION                            0x0
#define _STKPTR_STKPTR0_SIZE                                0x1
#define _STKPTR_STKPTR0_LENGTH                              0x1
#define _STKPTR_STKPTR0_MASK                                0x1
#define _STKPTR_STKPTR1_POSN                                0x1
#define _STKPTR_STKPTR1_POSITION                            0x1
#define _STKPTR_STKPTR1_SIZE                                0x1
#define _STKPTR_STKPTR1_LENGTH                              0x1
#define _STKPTR_STKPTR1_MASK                                0x2
#define _STKPTR_STKPTR2_POSN                                0x2
#define _STKPTR_STKPTR2_POSITION                            0x2
#define _STKPTR_STKPTR2_SIZE                                0x1
#define _STKPTR_STKPTR2_LENGTH                              0x1
#define _STKPTR_STKPTR2_MASK                                0x4
#define _STKPTR_STKPTR3_POSN                                0x3
#define _STKPTR_STKPTR3_POSITION                            0x3
#define _STKPTR_STKPTR3_SIZE                                0x1
#define _STKPTR_STKPTR3_LENGTH                              0x1
#define _STKPTR_STKPTR3_MASK                                0x8
#define _STKPTR_STKPTR4_POSN                                0x4
#define _STKPTR_STKPTR4_POSITION                            0x4
#define _STKPTR_STKPTR4_SIZE                                0x1
#define _STKPTR_STKPTR4_LENGTH                              0x1
#define _STKPTR_STKPTR4_MASK                                0x10
#define _STKPTR_STKOVF_POSN                                 0x7
#define _STKPTR_STKOVF_POSITION                             0x7
#define _STKPTR_STKOVF_SIZE                                 0x1
#define _STKPTR_STKOVF_LENGTH                               0x1
#define _STKPTR_STKOVF_MASK                                 0x80
#define _STKPTR_SP0_POSN                                    0x0
#define _STKPTR_SP0_POSITION                                0x0
#define _STKPTR_SP0_SIZE                                    0x1
#define _STKPTR_SP0_LENGTH                                  0x1
#define _STKPTR_SP0_MASK                                    0x1
#define _STKPTR_SP1_POSN                                    0x1
#define _STKPTR_SP1_POSITION                                0x1
#define _STKPTR_SP1_SIZE                                    0x1
#define _STKPTR_SP1_LENGTH                                  0x1
#define _STKPTR_SP1_MASK                                    0x2
#define _STKPTR_SP2_POSN                                    0x2
#define _STKPTR_SP2_POSITION                                0x2
#define _STKPTR_SP2_SIZE                                    0x1
#define _STKPTR_SP2_LENGTH                                  0x1
#define _STKPTR_SP2_MASK                                    0x4
#define _STKPTR_SP3_POSN                                    0x3
#define _STKPTR_SP3_POSITION                                0x3
#define _STKPTR_SP3_SIZE                                    0x1
#define _STKPTR_SP3_LENGTH                                  0x1
#define _STKPTR_SP3_MASK                                    0x8
#define _STKPTR_SP4_POSN                                    0x4
#define _STKPTR_SP4_POSITION                                0x4
#define _STKPTR_SP4_SIZE                                    0x1
#define _STKPTR_SP4_LENGTH                                  0x1
#define _STKPTR_SP4_MASK                                    0x10

// Register: TOS
#ifndef __CCI__
extern volatile unsigned short long     TOS                 @ 0xFFD;
#endif
#ifndef _LIB_BUILD
asm("TOS equ 0FFDh");
#endif

// Register: TOSL
extern volatile unsigned char           TOSL                @ 0xFFD;
#ifndef _LIB_BUILD
asm("TOSL equ 0FFDh");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned TOSL                   :8;
    };
} TOSLbits_t;
extern volatile TOSLbits_t TOSLbits @ 0xFFD;
// bitfield macros
#define _TOSL_TOSL_POSN                                     0x0
#define _TOSL_TOSL_POSITION                                 0x0
#define _TOSL_TOSL_SIZE                                     0x8
#define _TOSL_TOSL_LENGTH                                   0x8
#define _TOSL_TOSL_MASK                                     0xFF

// Register: TOSH
extern volatile unsigned char           TOSH                @ 0xFFE;
#ifndef _LIB_BUILD
asm("TOSH equ 0FFEh");
#endif
// bitfield definitions
typedef union {
    struct {
        unsigned TOSH                   :8;
    };
} TOSHbits_t;
extern volatile TOSHbits_t TOSHbits @ 0xFFE;
// bitfield macros
#define _TOSH_TOSH_POSN                                     0x0
#define _TOSH_TOSH_POSITION                                 0x0
#define _TOSH_TOSH_SIZE                                     0x8
#define _TOSH_TOSH_LENGTH                                   0x8
#define _TOSH_TOSH_MASK                                     0xFF

// Register: TOSU
extern volatile unsigned char           TOSU                @ 0xFFF;
#ifndef _LIB_BUILD
asm("TOSU equ 0FFFh");
#endif

/*
 * Bit Definitions
 */
#define _DEPRECATED __attribute__((__deprecated__))
#ifndef BANKMASK
#define BANKMASK(addr) ((addr)&0FFh)
#endif
extern volatile __bit                   ABDEN1              @ (((unsigned) &BAUDCON1)*8) + 0;
#define                                 ABDEN1_bit          BANKMASK(BAUDCON1), 0
extern volatile __bit                   ABDEN2              @ (((unsigned) &BAUDCON2)*8) + 0;
#define                                 ABDEN2_bit          BANKMASK(BAUDCON2), 0
extern volatile __bit                   ABDOVF1             @ (((unsigned) &BAUDCON1)*8) + 7;
#define                                 ABDOVF1_bit         BANKMASK(BAUDCON1), 7
extern volatile __bit                   ABDOVF2             @ (((unsigned) &BAUDCON2)*8) + 7;
#define                                 ABDOVF2_bit         BANKMASK(BAUDCON2), 7
extern volatile __bit                   ACKDT1              @ (((unsigned) &SSP1CON2)*8) + 5;
#define                                 ACKDT1_bit          BANKMASK(SSP1CON2), 5
extern volatile __bit                   ACKDT2              @ (((unsigned) &SSP2CON2)*8) + 5;
#define                                 ACKDT2_bit          BANKMASK(SSP2CON2), 5
extern volatile __bit                   ACKEN1              @ (((unsigned) &SSP1CON2)*8) + 4;
#define                                 ACKEN1_bit          BANKMASK(SSP1CON2), 4
extern volatile __bit                   ACKEN2              @ (((unsigned) &SSP2CON2)*8) + 4;
#define                                 ACKEN2_bit          BANKMASK(SSP2CON2), 4
extern volatile __bit                   ACKSTAT1            @ (((unsigned) &SSP1CON2)*8) + 6;
#define                                 ACKSTAT1_bit        BANKMASK(SSP1CON2), 6
extern volatile __bit                   ACKSTAT2            @ (((unsigned) &SSP2CON2)*8) + 6;
#define                                 ACKSTAT2_bit        BANKMASK(SSP2CON2), 6
extern volatile __bit                   ACQT0               @ (((unsigned) &ADCON2)*8) + 3;
#define                                 ACQT0_bit           BANKMASK(ADCON2), 3
extern volatile __bit                   ACQT1               @ (((unsigned) &ADCON2)*8) + 4;
#define                                 ACQT1_bit           BANKMASK(ADCON2), 4
extern volatile __bit                   ACQT2               @ (((unsigned) &ADCON2)*8) + 5;
#define                                 ACQT2_bit           BANKMASK(ADCON2), 5
extern volatile __bit                   ACSS                @ (((unsigned) &TBLPTRU)*8) + 5;
#define                                 ACSS_bit            BANKMASK(TBLPTRU), 5
extern volatile __bit                   ADCMD               @ (((unsigned) &PMD2)*8) + 0;
#define                                 ADCMD_bit           BANKMASK(PMD2), 0
extern volatile __bit                   ADCS0               @ (((unsigned) &ADCON2)*8) + 0;
#define                                 ADCS0_bit           BANKMASK(ADCON2), 0
extern volatile __bit                   ADCS1               @ (((unsigned) &ADCON2)*8) + 1;
#define                                 ADCS1_bit           BANKMASK(ADCON2), 1
extern volatile __bit                   ADCS2               @ (((unsigned) &ADCON2)*8) + 2;
#define                                 ADCS2_bit           BANKMASK(ADCON2), 2
extern volatile __bit                   ADDEN1              @ (((unsigned) &RCSTA1)*8) + 3;
#define                                 ADDEN1_bit          BANKMASK(RCSTA1), 3
extern volatile __bit                   ADDEN2              @ (((unsigned) &RCSTA2)*8) + 3;
#define                                 ADDEN2_bit          BANKMASK(RCSTA2), 3
extern volatile __bit                   ADFM                @ (((unsigned) &ADCON2)*8) + 7;
#define                                 ADFM_bit            BANKMASK(ADCON2), 7
extern volatile __bit                   ADIE                @ (((unsigned) &PIE1)*8) + 6;
#define                                 ADIE_bit            BANKMASK(PIE1), 6
extern volatile __bit                   ADIF                @ (((unsigned) &PIR1)*8) + 6;
#define                                 ADIF_bit            BANKMASK(PIR1), 6
extern volatile __bit                   ADIP                @ (((unsigned) &IPR1)*8) + 6;
#define                                 ADIP_bit            BANKMASK(IPR1), 6
extern volatile __bit                   ADMSK1              @ (((unsigned) &SSP1CON2)*8) + 1;
#define                                 ADMSK1_bit          BANKMASK(SSP1CON2), 1
extern volatile __bit                   ADMSK11             @ (((unsigned) &SSP1CON2)*8) + 1;
#define                                 ADMSK11_bit         BANKMASK(SSP1CON2), 1
extern volatile __bit                   ADMSK12             @ (((unsigned) &SSP2CON2)*8) + 1;
#define                                 ADMSK12_bit         BANKMASK(SSP2CON2), 1
extern volatile __bit                   ADMSK2              @ (((unsigned) &SSP1CON2)*8) + 2;
#define                                 ADMSK2_bit          BANKMASK(SSP1CON2), 2
extern volatile __bit                   ADMSK21             @ (((unsigned) &SSP1CON2)*8) + 2;
#define                                 ADMSK21_bit         BANKMASK(SSP1CON2), 2
extern volatile __bit                   ADMSK22             @ (((unsigned) &SSP2CON2)*8) + 2;
#define                                 ADMSK22_bit         BANKMASK(SSP2CON2), 2
extern volatile __bit                   ADMSK3              @ (((unsigned) &SSP1CON2)*8) + 3;
#define                                 ADMSK3_bit          BANKMASK(SSP1CON2), 3
extern volatile __bit                   ADMSK31             @ (((unsigned) &SSP1CON2)*8) + 3;
#define                                 ADMSK31_bit         BANKMASK(SSP1CON2), 3
extern volatile __bit                   ADMSK32             @ (((unsigned) &SSP2CON2)*8) + 3;
#define                                 ADMSK32_bit         BANKMASK(SSP2CON2), 3
extern volatile __bit                   ADMSK4              @ (((unsigned) &SSP1CON2)*8) + 4;
#define                                 ADMSK4_bit          BANKMASK(SSP1CON2), 4
extern volatile __bit                   ADMSK41             @ (((unsigned) &SSP1CON2)*8) + 4;
#define                                 ADMSK41_bit         BANKMASK(SSP1CON2), 4
extern volatile __bit                   ADMSK42             @ (((unsigned) &SSP2CON2)*8) + 4;
#define                                 ADMSK42_bit         BANKMASK(SSP2CON2), 4
extern volatile __bit                   ADMSK5              @ (((unsigned) &SSP1CON2)*8) + 5;
#define                                 ADMSK5_bit          BANKMASK(SSP1CON2), 5
extern volatile __bit                   ADMSK51             @ (((unsigned) &SSP1CON2)*8) + 5;
#define                                 ADMSK51_bit         BANKMASK(SSP1CON2), 5
extern volatile __bit                   ADMSK52             @ (((unsigned) &SSP2CON2)*8) + 5;
#define                                 ADMSK52_bit         BANKMASK(SSP2CON2), 5
extern volatile __bit                   ADON                @ (((unsigned) &ADCON0)*8) + 0;
#define                                 ADON_bit            BANKMASK(ADCON0), 0
extern volatile __bit                   AN0                 @ (((unsigned) &PORTA)*8) + 0;
#define                                 AN0_bit             BANKMASK(PORTA), 0
extern volatile __bit                   AN1                 @ (((unsigned) &PORTA)*8) + 1;
#define                                 AN1_bit             BANKMASK(PORTA), 1
extern volatile __bit                   AN10                @ (((unsigned) &PORTB)*8) + 1;
#define                                 AN10_bit            BANKMASK(PORTB), 1
extern volatile __bit                   AN11                @ (((unsigned) &PORTB)*8) + 4;
#define                                 AN11_bit            BANKMASK(PORTB), 4
extern volatile __bit                   AN12                @ (((unsigned) &PORTB)*8) + 0;
#define                                 AN12_bit            BANKMASK(PORTB), 0
extern volatile __bit                   AN13                @ (((unsigned) &PORTB)*8) + 5;
#define                                 AN13_bit            BANKMASK(PORTB), 5
extern volatile __bit                   AN14                @ (((unsigned) &PORTC)*8) + 2;
#define                                 AN14_bit            BANKMASK(PORTC), 2
extern volatile __bit                   AN15                @ (((unsigned) &PORTC)*8) + 3;
#define                                 AN15_bit            BANKMASK(PORTC), 3
extern volatile __bit                   AN16                @ (((unsigned) &PORTC)*8) + 4;
#define                                 AN16_bit            BANKMASK(PORTC), 4
extern volatile __bit                   AN17                @ (((unsigned) &PORTC)*8) + 5;
#define                                 AN17_bit            BANKMASK(PORTC), 5
extern volatile __bit                   AN18                @ (((unsigned) &PORTC)*8) + 6;
#define                                 AN18_bit            BANKMASK(PORTC), 6
extern volatile __bit                   AN19                @ (((unsigned) &PORTC)*8) + 7;
#define                                 AN19_bit            BANKMASK(PORTC), 7
extern volatile __bit                   AN2                 @ (((unsigned) &PORTA)*8) + 2;
#define                                 AN2_bit             BANKMASK(PORTA), 2
extern volatile __bit                   AN3                 @ (((unsigned) &PORTA)*8) + 3;
#define                                 AN3_bit             BANKMASK(PORTA), 3
extern volatile __bit                   AN4                 @ (((unsigned) &PORTA)*8) + 5;
#define                                 AN4_bit             BANKMASK(PORTA), 5
extern volatile __bit                   AN8                 @ (((unsigned) &PORTB)*8) + 2;
#define                                 AN8_bit             BANKMASK(PORTB), 2
extern volatile __bit                   AN9                 @ (((unsigned) &PORTB)*8) + 3;
#define                                 AN9_bit             BANKMASK(PORTB), 3
extern volatile __bit                   ANSA0               @ (((unsigned) &ANSELA)*8) + 0;
#define                                 ANSA0_bit           BANKMASK(ANSELA), 0
extern volatile __bit                   ANSA1               @ (((unsigned) &ANSELA)*8) + 1;
#define                                 ANSA1_bit           BANKMASK(ANSELA), 1
extern volatile __bit                   ANSA2               @ (((unsigned) &ANSELA)*8) + 2;
#define                                 ANSA2_bit           BANKMASK(ANSELA), 2
extern volatile __bit                   ANSA3               @ (((unsigned) &ANSELA)*8) + 3;
#define                                 ANSA3_bit           BANKMASK(ANSELA), 3
extern volatile __bit                   ANSA5               @ (((unsigned) &ANSELA)*8) + 5;
#define                                 ANSA5_bit           BANKMASK(ANSELA), 5
extern volatile __bit                   ANSB0               @ (((unsigned) &ANSELB)*8) + 0;
#define                                 ANSB0_bit           BANKMASK(ANSELB), 0
extern volatile __bit                   ANSB1               @ (((unsigned) &ANSELB)*8) + 1;
#define                                 ANSB1_bit           BANKMASK(ANSELB), 1
extern volatile __bit                   ANSB2               @ (((unsigned) &ANSELB)*8) + 2;
#define                                 ANSB2_bit           BANKMASK(ANSELB), 2
extern volatile __bit                   ANSB3               @ (((unsigned) &ANSELB)*8) + 3;
#define                                 ANSB3_bit           BANKMASK(ANSELB), 3
extern volatile __bit                   ANSB4               @ (((unsigned) &ANSELB)*8) + 4;
#define                                 ANSB4_bit           BANKMASK(ANSELB), 4
extern volatile __bit                   ANSB5               @ (((unsigned) &ANSELB)*8) + 5;
#define                                 ANSB5_bit           BANKMASK(ANSELB), 5
extern volatile __bit                   ANSC2               @ (((unsigned) &ANSELC)*8) + 2;
#define                                 ANSC2_bit           BANKMASK(ANSELC), 2
extern volatile __bit                   ANSC3               @ (((unsigned) &ANSELC)*8) + 3;
#define                                 ANSC3_bit           BANKMASK(ANSELC), 3
extern volatile __bit                   ANSC4               @ (((unsigned) &ANSELC)*8) + 4;
#define                                 ANSC4_bit           BANKMASK(ANSELC), 4
extern volatile __bit                   ANSC5               @ (((unsigned) &ANSELC)*8) + 5;
#define                                 ANSC5_bit           BANKMASK(ANSELC), 5
extern volatile __bit                   ANSC6               @ (((unsigned) &ANSELC)*8) + 6;
#define                                 ANSC6_bit           BANKMASK(ANSELC), 6
extern volatile __bit                   ANSC7               @ (((unsigned) &ANSELC)*8) + 7;
#define                                 ANSC7_bit           BANKMASK(ANSELC), 7
extern volatile __bit                   BCL1IE              @ (((unsigned) &PIE2)*8) + 3;
#define                                 BCL1IE_bit          BANKMASK(PIE2), 3
extern volatile __bit                   BCL1IF              @ (((unsigned) &PIR2)*8) + 3;
#define                                 BCL1IF_bit          BANKMASK(PIR2), 3
extern volatile __bit                   BCL1IP              @ (((unsigned) &IPR2)*8) + 3;
#define                                 BCL1IP_bit          BANKMASK(IPR2), 3
extern volatile __bit                   BCL2IE              @ (((unsigned) &PIE3)*8) + 6;
#define                                 BCL2IE_bit          BANKMASK(PIE3), 6
extern volatile __bit                   BCL2IF              @ (((unsigned) &PIR3)*8) + 6;
#define                                 BCL2IF_bit          BANKMASK(PIR3), 6
extern volatile __bit                   BCL2IP              @ (((unsigned) &IPR3)*8) + 6;
#define                                 BCL2IP_bit          BANKMASK(IPR3), 6
extern volatile __bit                   BCLIE               @ (((unsigned) &PIE2)*8) + 3;
#define                                 BCLIE_bit           BANKMASK(PIE2), 3
extern volatile __bit                   BCLIF               @ (((unsigned) &PIR2)*8) + 3;
#define                                 BCLIF_bit           BANKMASK(PIR2), 3
extern volatile __bit                   BCLIP               @ (((unsigned) &IPR2)*8) + 3;
#define                                 BCLIP_bit           BANKMASK(IPR2), 3
extern volatile __bit                   BF1                 @ (((unsigned) &SSP1STAT)*8) + 0;
#define                                 BF1_bit             BANKMASK(SSP1STAT), 0
extern volatile __bit                   BF2                 @ (((unsigned) &SSP2STAT)*8) + 0;
#define                                 BF2_bit             BANKMASK(SSP2STAT), 0
extern volatile __bit                   BGST                @ (((unsigned) &HLVDCON)*8) + 5;
#define                                 BGST_bit            BANKMASK(HLVDCON), 5
extern volatile __bit                   BGVST               @ (((unsigned) &HLVDCON)*8) + 6;
#define                                 BGVST_bit           BANKMASK(HLVDCON), 6
extern volatile __bit                   BOR                 @ (((unsigned) &RCON)*8) + 0;
#define                                 BOR_bit             BANKMASK(RCON), 0
extern volatile __bit                   BRG161              @ (((unsigned) &BAUDCON1)*8) + 3;
#define                                 BRG161_bit          BANKMASK(BAUDCON1), 3
extern volatile __bit                   BRG162              @ (((unsigned) &BAUDCON2)*8) + 3;
#define                                 BRG162_bit          BANKMASK(BAUDCON2), 3
extern volatile __bit                   BRGH1               @ (((unsigned) &TXSTA1)*8) + 2;
#define                                 BRGH1_bit           BANKMASK(TXSTA1), 2
extern volatile __bit                   BRGH2               @ (((unsigned) &TXSTA2)*8) + 2;
#define                                 BRGH2_bit           BANKMASK(TXSTA2), 2
extern volatile __bit                   C12IN0M             @ (((unsigned) &PORTA)*8) + 0;
#define                                 C12IN0M_bit         BANKMASK(PORTA), 0
extern volatile __bit                   C12IN0N             @ (((unsigned) &PORTA)*8) + 0;
#define                                 C12IN0N_bit         BANKMASK(PORTA), 0
extern volatile __bit                   C12IN1M             @ (((unsigned) &PORTA)*8) + 1;
#define                                 C12IN1M_bit         BANKMASK(PORTA), 1
extern volatile __bit                   C12IN1N             @ (((unsigned) &PORTA)*8) + 1;
#define                                 C12IN1N_bit         BANKMASK(PORTA), 1
extern volatile __bit                   C12IN2M             @ (((unsigned) &PORTB)*8) + 3;
#define                                 C12IN2M_bit         BANKMASK(PORTB), 3
extern volatile __bit                   C12IN2N             @ (((unsigned) &PORTB)*8) + 3;
#define                                 C12IN2N_bit         BANKMASK(PORTB), 3
extern volatile __bit                   C12IN3M             @ (((unsigned) &PORTB)*8) + 1;
#define                                 C12IN3M_bit         BANKMASK(PORTB), 1
extern volatile __bit                   C12IN3N             @ (((unsigned) &PORTB)*8) + 1;
#define                                 C12IN3N_bit         BANKMASK(PORTB), 1
extern volatile __bit                   C1CH0               @ (((unsigned) &CM1CON0)*8) + 0;
#define                                 C1CH0_bit           BANKMASK(CM1CON0), 0
extern volatile __bit                   C1CH1               @ (((unsigned) &CM1CON0)*8) + 1;
#define                                 C1CH1_bit           BANKMASK(CM1CON0), 1
extern volatile __bit                   C1HYS               @ (((unsigned) &CM2CON1)*8) + 3;
#define                                 C1HYS_bit           BANKMASK(CM2CON1), 3
extern volatile __bit                   C1IE                @ (((unsigned) &PIE2)*8) + 6;
#define                                 C1IE_bit            BANKMASK(PIE2), 6
extern volatile __bit                   C1IF                @ (((unsigned) &PIR2)*8) + 6;
#define                                 C1IF_bit            BANKMASK(PIR2), 6
extern volatile __bit                   C1INP               @ (((unsigned) &PORTA)*8) + 3;
#define                                 C1INP_bit           BANKMASK(PORTA), 3
extern volatile __bit                   C1IP                @ (((unsigned) &IPR2)*8) + 6;
#define                                 C1IP_bit            BANKMASK(IPR2), 6
extern volatile __bit                   C1OE                @ (((unsigned) &CM1CON0)*8) + 5;
#define                                 C1OE_bit            BANKMASK(CM1CON0), 5
extern volatile __bit                   C1ON                @ (((unsigned) &CM1CON0)*8) + 7;
#define                                 C1ON_bit            BANKMASK(CM1CON0), 7
extern volatile __bit                   C1POL               @ (((unsigned) &CM1CON0)*8) + 4;
#define                                 C1POL_bit           BANKMASK(CM1CON0), 4
extern volatile __bit                   C1R                 @ (((unsigned) &CM1CON0)*8) + 2;
#define                                 C1R_bit             BANKMASK(CM1CON0), 2
extern volatile __bit                   C1RSEL              @ (((unsigned) &CM2CON1)*8) + 5;
#define                                 C1RSEL_bit          BANKMASK(CM2CON1), 5
extern volatile __bit                   C1SP                @ (((unsigned) &CM1CON0)*8) + 3;
#define                                 C1SP_bit            BANKMASK(CM1CON0), 3
extern volatile __bit                   C1SYNC              @ (((unsigned) &CM2CON1)*8) + 1;
#define                                 C1SYNC_bit          BANKMASK(CM2CON1), 1
extern volatile __bit                   C1TSEL0             @ (((unsigned) &CCPTMRS0)*8) + 0;
#define                                 C1TSEL0_bit         BANKMASK(CCPTMRS0), 0
extern volatile __bit                   C1TSEL1             @ (((unsigned) &CCPTMRS0)*8) + 1;
#define                                 C1TSEL1_bit         BANKMASK(CCPTMRS0), 1
extern volatile __bit                   C2CH0               @ (((unsigned) &CM2CON0)*8) + 0;
#define                                 C2CH0_bit           BANKMASK(CM2CON0), 0
extern volatile __bit                   C2CH1               @ (((unsigned) &CM2CON0)*8) + 1;
#define                                 C2CH1_bit           BANKMASK(CM2CON0), 1
extern volatile __bit                   C2HYS               @ (((unsigned) &CM2CON1)*8) + 2;
#define                                 C2HYS_bit           BANKMASK(CM2CON1), 2
extern volatile __bit                   C2IE                @ (((unsigned) &PIE2)*8) + 5;
#define                                 C2IE_bit            BANKMASK(PIE2), 5
extern volatile __bit                   C2IF                @ (((unsigned) &PIR2)*8) + 5;
#define                                 C2IF_bit            BANKMASK(PIR2), 5
extern volatile __bit                   C2INP               @ (((unsigned) &PORTA)*8) + 2;
#define                                 C2INP_bit           BANKMASK(PORTA), 2
extern volatile __bit                   C2IP                @ (((unsigned) &IPR2)*8) + 5;
#define                                 C2IP_bit            BANKMASK(IPR2), 5
extern volatile __bit                   C2OE                @ (((unsigned) &CM2CON0)*8) + 5;
#define                                 C2OE_bit            BANKMASK(CM2CON0), 5
extern volatile __bit                   C2ON                @ (((unsigned) &CM2CON0)*8) + 7;
#define                                 C2ON_bit            BANKMASK(CM2CON0), 7
extern volatile __bit                   C2POL               @ (((unsigned) &CM2CON0)*8) + 4;
#define                                 C2POL_bit           BANKMASK(CM2CON0), 4
extern volatile __bit                   C2R                 @ (((unsigned) &CM2CON0)*8) + 2;
#define                                 C2R_bit             BANKMASK(CM2CON0), 2
extern volatile __bit                   C2RSEL              @ (((unsigned) &CM2CON1)*8) + 4;
#define                                 C2RSEL_bit          BANKMASK(CM2CON1), 4
extern volatile __bit                   C2SP                @ (((unsigned) &CM2CON0)*8) + 3;
#define                                 C2SP_bit            BANKMASK(CM2CON0), 3
extern volatile __bit                   C2SYNC              @ (((unsigned) &CM2CON1)*8) + 0;
#define                                 C2SYNC_bit          BANKMASK(CM2CON1), 0
extern volatile __bit                   C2TSEL0             @ (((unsigned) &CCPTMRS0)*8) + 3;
#define                                 C2TSEL0_bit         BANKMASK(CCPTMRS0), 3
extern volatile __bit                   C2TSEL1             @ (((unsigned) &CCPTMRS0)*8) + 4;
#define                                 C2TSEL1_bit         BANKMASK(CCPTMRS0), 4
extern volatile __bit                   C3TSEL0             @ (((unsigned) &CCPTMRS0)*8) + 6;
#define                                 C3TSEL0_bit         BANKMASK(CCPTMRS0), 6
extern volatile __bit                   C3TSEL1             @ (((unsigned) &CCPTMRS0)*8) + 7;
#define                                 C3TSEL1_bit         BANKMASK(CCPTMRS0), 7
extern volatile __bit                   C4TSEL0             @ (((unsigned) &CCPTMRS1)*8) + 0;
#define                                 C4TSEL0_bit         BANKMASK(CCPTMRS1), 0
extern volatile __bit                   C4TSEL1             @ (((unsigned) &CCPTMRS1)*8) + 1;
#define                                 C4TSEL1_bit         BANKMASK(CCPTMRS1), 1
extern volatile __bit                   C5TSEL0             @ (((unsigned) &CCPTMRS1)*8) + 2;
#define                                 C5TSEL0_bit         BANKMASK(CCPTMRS1), 2
extern volatile __bit                   C5TSEL1             @ (((unsigned) &CCPTMRS1)*8) + 3;
#define                                 C5TSEL1_bit         BANKMASK(CCPTMRS1), 3
extern volatile __bit                   CARRY               @ (((unsigned) &STATUS)*8) + 0;
#define                                 CARRY_bit           BANKMASK(STATUS), 0
extern volatile __bit                   CCH0                @ (((unsigned) &CM1CON0)*8) + 0;
#define                                 CCH0_bit            BANKMASK(CM1CON0), 0
extern volatile __bit                   CCH01               @ (((unsigned) &CM1CON0)*8) + 0;
#define                                 CCH01_bit           BANKMASK(CM1CON0), 0
extern volatile __bit                   CCH02               @ (((unsigned) &CM2CON0)*8) + 0;
#define                                 CCH02_bit           BANKMASK(CM2CON0), 0
extern volatile __bit                   CCH05               @ (((unsigned) &IPR5)*8) + 0;
#define                                 CCH05_bit           BANKMASK(IPR5), 0
extern volatile __bit                   CCH1                @ (((unsigned) &CM1CON0)*8) + 1;
#define                                 CCH1_bit            BANKMASK(CM1CON0), 1
extern volatile __bit                   CCH11               @ (((unsigned) &CM1CON0)*8) + 1;
#define                                 CCH11_bit           BANKMASK(CM1CON0), 1
extern volatile __bit                   CCH12               @ (((unsigned) &CM2CON0)*8) + 1;
#define                                 CCH12_bit           BANKMASK(CM2CON0), 1
extern volatile __bit                   CCH15               @ (((unsigned) &IPR5)*8) + 1;
#define                                 CCH15_bit           BANKMASK(IPR5), 1
extern volatile __bit                   CCIP3IP             @ (((unsigned) &IPR4)*8) + 0;
#define                                 CCIP3IP_bit         BANKMASK(IPR4), 0
extern volatile __bit                   CCP1                @ (((unsigned) &PORTC)*8) + 2;
#define                                 CCP1_bit            BANKMASK(PORTC), 2
extern volatile __bit                   CCP1AS0             @ (((unsigned) &ECCP1AS)*8) + 4;
#define                                 CCP1AS0_bit         BANKMASK(ECCP1AS), 4
extern volatile __bit                   CCP1AS1             @ (((unsigned) &ECCP1AS)*8) + 5;
#define                                 CCP1AS1_bit         BANKMASK(ECCP1AS), 5
extern volatile __bit                   CCP1AS2             @ (((unsigned) &ECCP1AS)*8) + 6;
#define                                 CCP1AS2_bit         BANKMASK(ECCP1AS), 6
extern volatile __bit                   CCP1ASE             @ (((unsigned) &ECCP1AS)*8) + 7;
#define                                 CCP1ASE_bit         BANKMASK(ECCP1AS), 7
extern volatile __bit                   CCP1IE              @ (((unsigned) &PIE1)*8) + 2;
#define                                 CCP1IE_bit          BANKMASK(PIE1), 2
extern volatile __bit                   CCP1IF              @ (((unsigned) &PIR1)*8) + 2;
#define                                 CCP1IF_bit          BANKMASK(PIR1), 2
extern volatile __bit                   CCP1IP              @ (((unsigned) &IPR1)*8) + 2;
#define                                 CCP1IP_bit          BANKMASK(IPR1), 2
extern volatile __bit                   CCP1M0              @ (((unsigned) &CCP1CON)*8) + 0;
#define                                 CCP1M0_bit          BANKMASK(CCP1CON), 0
extern volatile __bit                   CCP1M1              @ (((unsigned) &CCP1CON)*8) + 1;
#define                                 CCP1M1_bit          BANKMASK(CCP1CON), 1
extern volatile __bit                   CCP1M2              @ (((unsigned) &CCP1CON)*8) + 2;
#define                                 CCP1M2_bit          BANKMASK(CCP1CON), 2
extern volatile __bit                   CCP1M3              @ (((unsigned) &CCP1CON)*8) + 3;
#define                                 CCP1M3_bit          BANKMASK(CCP1CON), 3
extern volatile __bit                   CCP1MD              @ (((unsigned) &PMD1)*8) + 0;
#define                                 CCP1MD_bit          BANKMASK(PMD1), 0
extern volatile __bit                   CCP2AS0             @ (((unsigned) &ECCP2AS)*8) + 4;
#define                                 CCP2AS0_bit         BANKMASK(ECCP2AS), 4
extern volatile __bit                   CCP2AS1             @ (((unsigned) &ECCP2AS)*8) + 5;
#define                                 CCP2AS1_bit         BANKMASK(ECCP2AS), 5
extern volatile __bit                   CCP2AS2             @ (((unsigned) &ECCP2AS)*8) + 6;
#define                                 CCP2AS2_bit         BANKMASK(ECCP2AS), 6
extern volatile __bit                   CCP2ASE             @ (((unsigned) &ECCP2AS)*8) + 7;
#define                                 CCP2ASE_bit         BANKMASK(ECCP2AS), 7
extern volatile __bit                   CCP2IE              @ (((unsigned) &PIE2)*8) + 0;
#define                                 CCP2IE_bit          BANKMASK(PIE2), 0
extern volatile __bit                   CCP2IF              @ (((unsigned) &PIR2)*8) + 0;
#define                                 CCP2IF_bit          BANKMASK(PIR2), 0
extern volatile __bit                   CCP2IP              @ (((unsigned) &IPR2)*8) + 0;
#define                                 CCP2IP_bit          BANKMASK(IPR2), 0
extern volatile __bit                   CCP2M0              @ (((unsigned) &CCP2CON)*8) + 0;
#define                                 CCP2M0_bit          BANKMASK(CCP2CON), 0
extern volatile __bit                   CCP2M1              @ (((unsigned) &CCP2CON)*8) + 1;
#define                                 CCP2M1_bit          BANKMASK(CCP2CON), 1
extern volatile __bit                   CCP2M2              @ (((unsigned) &CCP2CON)*8) + 2;
#define                                 CCP2M2_bit          BANKMASK(CCP2CON), 2
extern volatile __bit                   CCP2M3              @ (((unsigned) &CCP2CON)*8) + 3;
#define                                 CCP2M3_bit          BANKMASK(CCP2CON), 3
extern volatile __bit                   CCP2MD              @ (((unsigned) &PMD1)*8) + 1;
#define                                 CCP2MD_bit          BANKMASK(PMD1), 1
extern volatile __bit                   CCP2_PA2            @ (((unsigned) &PORTB)*8) + 3;
#define                                 CCP2_PA2_bit        BANKMASK(PORTB), 3
extern volatile __bit                   CCP3AS0             @ (((unsigned) &ECCP3AS)*8) + 4;
#define                                 CCP3AS0_bit         BANKMASK(ECCP3AS), 4
extern volatile __bit                   CCP3AS1             @ (((unsigned) &ECCP3AS)*8) + 5;
#define                                 CCP3AS1_bit         BANKMASK(ECCP3AS), 5
extern volatile __bit                   CCP3AS2             @ (((unsigned) &ECCP3AS)*8) + 6;
#define                                 CCP3AS2_bit         BANKMASK(ECCP3AS), 6
extern volatile __bit                   CCP3ASE             @ (((unsigned) &ECCP3AS)*8) + 7;
#define                                 CCP3ASE_bit         BANKMASK(ECCP3AS), 7
extern volatile __bit                   CCP3IE              @ (((unsigned) &PIE4)*8) + 0;
#define                                 CCP3IE_bit          BANKMASK(PIE4), 0
extern volatile __bit                   CCP3IF              @ (((unsigned) &PIR4)*8) + 0;
#define                                 CCP3IF_bit          BANKMASK(PIR4), 0
extern volatile __bit                   CCP3IP              @ (((unsigned) &IPR4)*8) + 0;
#define                                 CCP3IP_bit          BANKMASK(IPR4), 0
extern volatile __bit                   CCP3M0              @ (((unsigned) &CCP3CON)*8) + 0;
#define                                 CCP3M0_bit          BANKMASK(CCP3CON), 0
extern volatile __bit                   CCP3M1              @ (((unsigned) &CCP3CON)*8) + 1;
#define                                 CCP3M1_bit          BANKMASK(CCP3CON), 1
extern volatile __bit                   CCP3M2              @ (((unsigned) &CCP3CON)*8) + 2;
#define                                 CCP3M2_bit          BANKMASK(CCP3CON), 2
extern volatile __bit                   CCP3M3              @ (((unsigned) &CCP3CON)*8) + 3;
#define                                 CCP3M3_bit          BANKMASK(CCP3CON), 3
extern volatile __bit                   CCP3MD              @ (((unsigned) &PMD1)*8) + 2;
#define                                 CCP3MD_bit          BANKMASK(PMD1), 2
extern volatile __bit                   CCP4                @ (((unsigned) &PORTB)*8) + 0;
#define                                 CCP4_bit            BANKMASK(PORTB), 0
extern volatile __bit                   CCP4IE              @ (((unsigned) &PIE4)*8) + 1;
#define                                 CCP4IE_bit          BANKMASK(PIE4), 1
extern volatile __bit                   CCP4IF              @ (((unsigned) &PIR4)*8) + 1;
#define                                 CCP4IF_bit          BANKMASK(PIR4), 1
extern volatile __bit                   CCP4IP              @ (((unsigned) &IPR4)*8) + 1;
#define                                 CCP4IP_bit          BANKMASK(IPR4), 1
extern volatile __bit                   CCP4M0              @ (((unsigned) &CCP4CON)*8) + 0;
#define                                 CCP4M0_bit          BANKMASK(CCP4CON), 0
extern volatile __bit                   CCP4M1              @ (((unsigned) &CCP4CON)*8) + 1;
#define                                 CCP4M1_bit          BANKMASK(CCP4CON), 1
extern volatile __bit                   CCP4M2              @ (((unsigned) &CCP4CON)*8) + 2;
#define                                 CCP4M2_bit          BANKMASK(CCP4CON), 2
extern volatile __bit                   CCP4M3              @ (((unsigned) &CCP4CON)*8) + 3;
#define                                 CCP4M3_bit          BANKMASK(CCP4CON), 3
extern volatile __bit                   CCP4MD              @ (((unsigned) &PMD1)*8) + 3;
#define                                 CCP4MD_bit          BANKMASK(PMD1), 3
extern volatile __bit                   CCP5                @ (((unsigned) &PORTA)*8) + 4;
#define                                 CCP5_bit            BANKMASK(PORTA), 4
extern volatile __bit                   CCP5IE              @ (((unsigned) &PIE4)*8) + 2;
#define                                 CCP5IE_bit          BANKMASK(PIE4), 2
extern volatile __bit                   CCP5IF              @ (((unsigned) &PIR4)*8) + 2;
#define                                 CCP5IF_bit          BANKMASK(PIR4), 2
extern volatile __bit                   CCP5IP              @ (((unsigned) &IPR4)*8) + 2;
#define                                 CCP5IP_bit          BANKMASK(IPR4), 2
extern volatile __bit                   CCP5M0              @ (((unsigned) &CCP5CON)*8) + 0;
#define                                 CCP5M0_bit          BANKMASK(CCP5CON), 0
extern volatile __bit                   CCP5M1              @ (((unsigned) &CCP5CON)*8) + 1;
#define                                 CCP5M1_bit          BANKMASK(CCP5CON), 1
extern volatile __bit                   CCP5M2              @ (((unsigned) &CCP5CON)*8) + 2;
#define                                 CCP5M2_bit          BANKMASK(CCP5CON), 2
extern volatile __bit                   CCP5M3              @ (((unsigned) &CCP5CON)*8) + 3;
#define                                 CCP5M3_bit          BANKMASK(CCP5CON), 3
extern volatile __bit                   CCP5MD              @ (((unsigned) &PMD1)*8) + 4;
#define                                 CCP5MD_bit          BANKMASK(PMD1), 4
extern volatile __bit                   CCP9E               @ (((unsigned) &PORTE)*8) + 3;
#define                                 CCP9E_bit           BANKMASK(PORTE), 3
extern volatile __bit                   CFGS                @ (((unsigned) &EECON1)*8) + 6;
#define                                 CFGS_bit            BANKMASK(EECON1), 6
extern volatile __bit                   CHS0                @ (((unsigned) &ADCON0)*8) + 2;
#define                                 CHS0_bit            BANKMASK(ADCON0), 2
extern volatile __bit                   CHS1                @ (((unsigned) &ADCON0)*8) + 3;
#define                                 CHS1_bit            BANKMASK(ADCON0), 3
extern volatile __bit                   CHS2                @ (((unsigned) &ADCON0)*8) + 4;
#define                                 CHS2_bit            BANKMASK(ADCON0), 4
extern volatile __bit                   CHS3                @ (((unsigned) &ADCON0)*8) + 5;
#define                                 CHS3_bit            BANKMASK(ADCON0), 5
extern volatile __bit                   CHS4                @ (((unsigned) &ADCON0)*8) + 6;
#define                                 CHS4_bit            BANKMASK(ADCON0), 6
extern volatile __bit                   CHSN3               @ (((unsigned) &ADCON1)*8) + 3;
#define                                 CHSN3_bit           BANKMASK(ADCON1), 3
extern volatile __bit                   CK                  @ (((unsigned) &PORTC)*8) + 6;
#define                                 CK_bit              BANKMASK(PORTC), 6
extern volatile __bit                   CK1                 @ (((unsigned) &PORTC)*8) + 6;
#define                                 CK1_bit             BANKMASK(PORTC), 6
extern volatile __bit                   CK2                 @ (((unsigned) &PORTB)*8) + 6;
#define                                 CK2_bit             BANKMASK(PORTB), 6
extern volatile __bit                   CKE1                @ (((unsigned) &SSP1STAT)*8) + 6;
#define                                 CKE1_bit            BANKMASK(SSP1STAT), 6
extern volatile __bit                   CKE2                @ (((unsigned) &SSP2STAT)*8) + 6;
#define                                 CKE2_bit            BANKMASK(SSP2STAT), 6
extern volatile __bit                   CKP1                @ (((unsigned) &SSP1CON1)*8) + 4;
#define                                 CKP1_bit            BANKMASK(SSP1CON1), 4
extern volatile __bit                   CKP2                @ (((unsigned) &SSP2CON1)*8) + 4;
#define                                 CKP2_bit            BANKMASK(SSP2CON1), 4
extern volatile __bit                   CMIE                @ (((unsigned) &PIE2)*8) + 6;
#define                                 CMIE_bit            BANKMASK(PIE2), 6
extern volatile __bit                   CMIF                @ (((unsigned) &PIR2)*8) + 6;
#define                                 CMIF_bit            BANKMASK(PIR2), 6
extern volatile __bit                   CMIP                @ (((unsigned) &IPR2)*8) + 6;
#define                                 CMIP_bit            BANKMASK(IPR2), 6
extern volatile __bit                   CMP1MD              @ (((unsigned) &PMD2)*8) + 1;
#define                                 CMP1MD_bit          BANKMASK(PMD2), 1
extern volatile __bit                   CMP2MD              @ (((unsigned) &PMD2)*8) + 2;
#define                                 CMP2MD_bit          BANKMASK(PMD2), 2
extern volatile __bit                   COE                 @ (((unsigned) &CM1CON0)*8) + 6;
#define                                 COE_bit             BANKMASK(CM1CON0), 6
extern volatile __bit                   COE1                @ (((unsigned) &CM1CON0)*8) + 6;
#define                                 COE1_bit            BANKMASK(CM1CON0), 6
extern volatile __bit                   COE2                @ (((unsigned) &CM2CON0)*8) + 6;
#define                                 COE2_bit            BANKMASK(CM2CON0), 6
extern volatile __bit                   CON                 @ (((unsigned) &CM1CON0)*8) + 7;
#define                                 CON_bit             BANKMASK(CM1CON0), 7
extern volatile __bit                   CON1                @ (((unsigned) &CM1CON0)*8) + 7;
#define                                 CON1_bit            BANKMASK(CM1CON0), 7
extern volatile __bit                   CON2                @ (((unsigned) &CM2CON0)*8) + 7;
#define                                 CON2_bit            BANKMASK(CM2CON0), 7
extern volatile __bit                   CPOL                @ (((unsigned) &CM1CON0)*8) + 5;
#define                                 CPOL_bit            BANKMASK(CM1CON0), 5
extern volatile __bit                   CPOL1               @ (((unsigned) &CM1CON0)*8) + 5;
#define                                 CPOL1_bit           BANKMASK(CM1CON0), 5
extern volatile __bit                   CPOL2               @ (((unsigned) &CM2CON0)*8) + 5;
#define                                 CPOL2_bit           BANKMASK(CM2CON0), 5
extern volatile __bit                   CREF                @ (((unsigned) &CM1CON0)*8) + 2;
#define                                 CREF_bit            BANKMASK(CM1CON0), 2
extern volatile __bit                   CREF1               @ (((unsigned) &CM1CON0)*8) + 2;
#define                                 CREF1_bit           BANKMASK(CM1CON0), 2
extern volatile __bit                   CREF2               @ (((unsigned) &CM2CON0)*8) + 2;
#define                                 CREF2_bit           BANKMASK(CM2CON0), 2
extern volatile __bit                   CREN1               @ (((unsigned) &RCSTA1)*8) + 4;
#define                                 CREN1_bit           BANKMASK(RCSTA1), 4
extern volatile __bit                   CREN2               @ (((unsigned) &RCSTA2)*8) + 4;
#define                                 CREN2_bit           BANKMASK(RCSTA2), 4
extern volatile __bit                   CSRC1               @ (((unsigned) &TXSTA1)*8) + 7;
#define                                 CSRC1_bit           BANKMASK(TXSTA1), 7
extern volatile __bit                   CSRC2               @ (((unsigned) &TXSTA2)*8) + 7;
#define                                 CSRC2_bit           BANKMASK(TXSTA2), 7
extern volatile __bit                   CTED1               @ (((unsigned) &PORTB)*8) + 2;
#define                                 CTED1_bit           BANKMASK(PORTB), 2
extern volatile __bit                   CTED2               @ (((unsigned) &PORTB)*8) + 3;
#define                                 CTED2_bit           BANKMASK(PORTB), 3
extern volatile __bit                   CTMUEN              @ (((unsigned) &CTMUCONH)*8) + 7;
#define                                 CTMUEN_bit          BANKMASK(CTMUCONH), 7
extern volatile __bit                   CTMUIE              @ (((unsigned) &PIE3)*8) + 3;
#define                                 CTMUIE_bit          BANKMASK(PIE3), 3
extern volatile __bit                   CTMUIF              @ (((unsigned) &PIR3)*8) + 3;
#define                                 CTMUIF_bit          BANKMASK(PIR3), 3
extern volatile __bit                   CTMUIP              @ (((unsigned) &IPR3)*8) + 3;
#define                                 CTMUIP_bit          BANKMASK(IPR3), 3
extern volatile __bit                   CTMUMD              @ (((unsigned) &PMD2)*8) + 3;
#define                                 CTMUMD_bit          BANKMASK(PMD2), 3
extern volatile __bit                   CTMUSIDL            @ (((unsigned) &CTMUCONH)*8) + 5;
#define                                 CTMUSIDL_bit        BANKMASK(CTMUCONH), 5
extern volatile __bit                   CTPLS               @ (((unsigned) &PORTC)*8) + 2;
#define                                 CTPLS_bit           BANKMASK(PORTC), 2
extern volatile __bit                   CTTRIG              @ (((unsigned) &CTMUCONH)*8) + 0;
#define                                 CTTRIG_bit          BANKMASK(CTMUCONH), 0
extern volatile __bit                   CVREF               @ (((unsigned) &PORTA)*8) + 2;
#define                                 CVREF_bit           BANKMASK(PORTA), 2
extern volatile __bit                   DA                  @ (((unsigned) &SSP1STAT)*8) + 5;
#define                                 DA_bit              BANKMASK(SSP1STAT), 5
extern volatile __bit                   DA1                 @ (((unsigned) &SSP1STAT)*8) + 5;
#define                                 DA1_bit             BANKMASK(SSP1STAT), 5
extern volatile __bit                   DA2                 @ (((unsigned) &SSP2STAT)*8) + 5;
#define                                 DA2_bit             BANKMASK(SSP2STAT), 5
extern volatile __bit                   DACEN               @ (((unsigned) &VREFCON1)*8) + 7;
#define                                 DACEN_bit           BANKMASK(VREFCON1), 7
extern volatile __bit                   DACLPS              @ (((unsigned) &VREFCON1)*8) + 6;
#define                                 DACLPS_bit          BANKMASK(VREFCON1), 6
extern volatile __bit                   DACNSS              @ (((unsigned) &VREFCON1)*8) + 0;
#define                                 DACNSS_bit          BANKMASK(VREFCON1), 0
extern volatile __bit                   DACOE               @ (((unsigned) &VREFCON1)*8) + 5;
#define                                 DACOE_bit           BANKMASK(VREFCON1), 5
extern volatile __bit                   DACOUT              @ (((unsigned) &PORTA)*8) + 2;
#define                                 DACOUT_bit          BANKMASK(PORTA), 2
extern volatile __bit                   DACPSS0             @ (((unsigned) &VREFCON1)*8) + 2;
#define                                 DACPSS0_bit         BANKMASK(VREFCON1), 2
extern volatile __bit                   DACPSS1             @ (((unsigned) &VREFCON1)*8) + 3;
#define                                 DACPSS1_bit         BANKMASK(VREFCON1), 3
extern volatile __bit                   DACR0               @ (((unsigned) &VREFCON2)*8) + 0;
#define                                 DACR0_bit           BANKMASK(VREFCON2), 0
extern volatile __bit                   DACR1               @ (((unsigned) &VREFCON2)*8) + 1;
#define                                 DACR1_bit           BANKMASK(VREFCON2), 1
extern volatile __bit                   DACR2               @ (((unsigned) &VREFCON2)*8) + 2;
#define                                 DACR2_bit           BANKMASK(VREFCON2), 2
extern volatile __bit                   DACR3               @ (((unsigned) &VREFCON2)*8) + 3;
#define                                 DACR3_bit           BANKMASK(VREFCON2), 3
extern volatile __bit                   DACR4               @ (((unsigned) &VREFCON2)*8) + 4;
#define                                 DACR4_bit           BANKMASK(VREFCON2), 4
extern volatile __bit                   DATA_ADDRESS        @ (((unsigned) &SSP1STAT)*8) + 5;
#define                                 DATA_ADDRESS_bit    BANKMASK(SSP1STAT), 5
extern volatile __bit                   DATA_ADDRESS2       @ (((unsigned) &SSP2STAT)*8) + 5;
#define                                 DATA_ADDRESS2_bit   BANKMASK(SSP2STAT), 5
extern volatile __bit                   DC                  @ (((unsigned) &STATUS)*8) + 1;
#define                                 DC_bit              BANKMASK(STATUS), 1
extern volatile __bit                   DC1B0               @ (((unsigned) &CCP1CON)*8) + 4;
#define                                 DC1B0_bit           BANKMASK(CCP1CON), 4
extern volatile __bit                   DC1B1               @ (((unsigned) &CCP1CON)*8) + 5;
#define                                 DC1B1_bit           BANKMASK(CCP1CON), 5
extern volatile __bit                   DC2B0               @ (((unsigned) &CCP2CON)*8) + 4;
#define                                 DC2B0_bit           BANKMASK(CCP2CON), 4
extern volatile __bit                   DC2B1               @ (((unsigned) &CCP2CON)*8) + 5;
#define                                 DC2B1_bit           BANKMASK(CCP2CON), 5
extern volatile __bit                   DC3B0               @ (((unsigned) &CCP3CON)*8) + 4;
#define                                 DC3B0_bit           BANKMASK(CCP3CON), 4
extern volatile __bit                   DC3B1               @ (((unsigned) &CCP3CON)*8) + 5;
#define                                 DC3B1_bit           BANKMASK(CCP3CON), 5
extern volatile __bit                   DC4B0               @ (((unsigned) &CCP4CON)*8) + 4;
#define                                 DC4B0_bit           BANKMASK(CCP4CON), 4
extern volatile __bit                   DC4B1               @ (((unsigned) &CCP4CON)*8) + 5;
#define                                 DC4B1_bit           BANKMASK(CCP4CON), 5
extern volatile __bit                   DC5B0               @ (((unsigned) &CCP5CON)*8) + 4;
#define                                 DC5B0_bit           BANKMASK(CCP5CON), 4
extern volatile __bit                   DC5B1               @ (((unsigned) &CCP5CON)*8) + 5;
#define                                 DC5B1_bit           BANKMASK(CCP5CON), 5
extern volatile __bit                   DONE                @ (((unsigned) &ADCON0)*8) + 1;
#define                                 DONE_bit            BANKMASK(ADCON0), 1
extern volatile __bit                   DT                  @ (((unsigned) &PORTC)*8) + 7;
#define                                 DT_bit              BANKMASK(PORTC), 7
extern volatile __bit                   DT1                 @ (((unsigned) &PORTC)*8) + 7;
#define                                 DT1_bit             BANKMASK(PORTC), 7
extern volatile __bit                   DT2                 @ (((unsigned) &PORTB)*8) + 7;
#define                                 DT2_bit             BANKMASK(PORTB), 7
extern volatile __bit                   DTRXP1              @ (((unsigned) &BAUDCON1)*8) + 5;
#define                                 DTRXP1_bit          BANKMASK(BAUDCON1), 5
extern volatile __bit                   DTRXP2              @ (((unsigned) &BAUDCON2)*8) + 5;
#define                                 DTRXP2_bit          BANKMASK(BAUDCON2), 5
extern volatile __bit                   D_A2                @ (((unsigned) &SSP2STAT)*8) + 5;
#define                                 D_A2_bit            BANKMASK(SSP2STAT), 5
extern volatile __bit                   D_NOT_A2            @ (((unsigned) &SSP2STAT)*8) + 5;
#define                                 D_NOT_A2_bit        BANKMASK(SSP2STAT), 5
extern volatile __bit                   D_nA2               @ (((unsigned) &SSP2STAT)*8) + 5;
#define                                 D_nA2_bit           BANKMASK(SSP2STAT), 5
extern volatile __bit                   ECCPAS0             @ (((unsigned) &ECCP1AS)*8) + 4;
#define                                 ECCPAS0_bit         BANKMASK(ECCP1AS), 4
extern volatile __bit                   ECCPAS1             @ (((unsigned) &ECCP1AS)*8) + 5;
#define                                 ECCPAS1_bit         BANKMASK(ECCP1AS), 5
extern volatile __bit                   ECCPAS2             @ (((unsigned) &ECCP1AS)*8) + 6;
#define                                 ECCPAS2_bit         BANKMASK(ECCP1AS), 6
extern volatile __bit                   ECCPASE             @ (((unsigned) &ECCP1AS)*8) + 7;
#define                                 ECCPASE_bit         BANKMASK(ECCP1AS), 7
extern volatile __bit                   EDG1POL             @ (((unsigned) &CTMUCONL)*8) + 4;
#define                                 EDG1POL_bit         BANKMASK(CTMUCONL), 4
extern volatile __bit                   EDG1SEL0            @ (((unsigned) &CTMUCONL)*8) + 2;
#define                                 EDG1SEL0_bit        BANKMASK(CTMUCONL), 2
extern volatile __bit                   EDG1SEL1            @ (((unsigned) &CTMUCONL)*8) + 3;
#define                                 EDG1SEL1_bit        BANKMASK(CTMUCONL), 3
extern volatile __bit                   EDG1STAT            @ (((unsigned) &CTMUCONL)*8) + 0;
#define                                 EDG1STAT_bit        BANKMASK(CTMUCONL), 0
extern volatile __bit                   EDG2POL             @ (((unsigned) &CTMUCONL)*8) + 7;
#define                                 EDG2POL_bit         BANKMASK(CTMUCONL), 7
extern volatile __bit                   EDG2SEL0            @ (((unsigned) &CTMUCONL)*8) + 5;
#define                                 EDG2SEL0_bit        BANKMASK(CTMUCONL), 5
extern volatile __bit                   EDG2SEL1            @ (((unsigned) &CTMUCONL)*8) + 6;
#define                                 EDG2SEL1_bit        BANKMASK(CTMUCONL), 6
extern volatile __bit                   EDG2STAT            @ (((unsigned) &CTMUCONL)*8) + 1;
#define                                 EDG2STAT_bit        BANKMASK(CTMUCONL), 1
extern volatile __bit                   EDGEN               @ (((unsigned) &CTMUCONH)*8) + 3;
#define                                 EDGEN_bit           BANKMASK(CTMUCONH), 3
extern volatile __bit                   EDGSEQEN            @ (((unsigned) &CTMUCONH)*8) + 2;
#define                                 EDGSEQEN_bit        BANKMASK(CTMUCONH), 2
extern volatile __bit                   EEADR0              @ (((unsigned) &EEADR)*8) + 0;
#define                                 EEADR0_bit          BANKMASK(EEADR), 0
extern volatile __bit                   EEADR1              @ (((unsigned) &EEADR)*8) + 1;
#define                                 EEADR1_bit          BANKMASK(EEADR), 1
extern volatile __bit                   EEADR2              @ (((unsigned) &EEADR)*8) + 2;
#define                                 EEADR2_bit          BANKMASK(EEADR), 2
extern volatile __bit                   EEADR3              @ (((unsigned) &EEADR)*8) + 3;
#define                                 EEADR3_bit          BANKMASK(EEADR), 3
extern volatile __bit                   EEADR4              @ (((unsigned) &EEADR)*8) + 4;
#define                                 EEADR4_bit          BANKMASK(EEADR), 4
extern volatile __bit                   EEADR5              @ (((unsigned) &EEADR)*8) + 5;
#define                                 EEADR5_bit          BANKMASK(EEADR), 5
extern volatile __bit                   EEADR6              @ (((unsigned) &EEADR)*8) + 6;
#define                                 EEADR6_bit          BANKMASK(EEADR), 6
extern volatile __bit                   EEADR7              @ (((unsigned) &EEADR)*8) + 7;
#define                                 EEADR7_bit          BANKMASK(EEADR), 7
extern volatile __bit                   EEFS                @ (((unsigned) &EECON1)*8) + 6;
#define                                 EEFS_bit            BANKMASK(EECON1), 6
extern volatile __bit                   EEIE                @ (((unsigned) &PIE2)*8) + 4;
#define                                 EEIE_bit            BANKMASK(PIE2), 4
extern volatile __bit                   EEIF                @ (((unsigned) &PIR2)*8) + 4;
#define                                 EEIF_bit            BANKMASK(PIR2), 4
extern volatile __bit                   EEIP                @ (((unsigned) &IPR2)*8) + 4;
#define                                 EEIP_bit            BANKMASK(IPR2), 4
extern volatile __bit                   EEPGD               @ (((unsigned) &EECON1)*8) + 7;
#define                                 EEPGD_bit           BANKMASK(EECON1), 7
extern volatile __bit                   EMBMD               @ (((unsigned) &PMD1)*8) + 0;
#define                                 EMBMD_bit           BANKMASK(PMD1), 0
extern volatile __bit                   EVPOL0              @ (((unsigned) &CM1CON0)*8) + 3;
#define                                 EVPOL0_bit          BANKMASK(CM1CON0), 3
extern volatile __bit                   EVPOL01             @ (((unsigned) &CM1CON0)*8) + 3;
#define                                 EVPOL01_bit         BANKMASK(CM1CON0), 3
extern volatile __bit                   EVPOL02             @ (((unsigned) &CM2CON0)*8) + 3;
#define                                 EVPOL02_bit         BANKMASK(CM2CON0), 3
extern volatile __bit                   EVPOL1              @ (((unsigned) &CM1CON0)*8) + 4;
#define                                 EVPOL1_bit          BANKMASK(CM1CON0), 4
extern volatile __bit                   EVPOL11             @ (((unsigned) &CM1CON0)*8) + 4;
#define                                 EVPOL11_bit         BANKMASK(CM1CON0), 4
extern volatile __bit                   EVPOL12             @ (((unsigned) &CM2CON0)*8) + 4;
#define                                 EVPOL12_bit         BANKMASK(CM2CON0), 4
extern volatile __bit                   FERR1               @ (((unsigned) &RCSTA1)*8) + 2;
#define                                 FERR1_bit           BANKMASK(RCSTA1), 2
extern volatile __bit                   FERR2               @ (((unsigned) &RCSTA2)*8) + 2;
#define                                 FERR2_bit           BANKMASK(RCSTA2), 2
extern volatile __bit                   FLT0                @ (((unsigned) &PORTB)*8) + 0;
#define                                 FLT0_bit            BANKMASK(PORTB), 0
extern volatile __bit                   FREE                @ (((unsigned) &EECON1)*8) + 4;
#define                                 FREE_bit            BANKMASK(EECON1), 4
extern volatile __bit                   FVREN               @ (((unsigned) &VREFCON0)*8) + 7;
#define                                 FVREN_bit           BANKMASK(VREFCON0), 7
extern volatile __bit                   FVRS0               @ (((unsigned) &VREFCON0)*8) + 4;
#define                                 FVRS0_bit           BANKMASK(VREFCON0), 4
extern volatile __bit                   FVRS1               @ (((unsigned) &VREFCON0)*8) + 5;
#define                                 FVRS1_bit           BANKMASK(VREFCON0), 5
extern volatile __bit                   FVRST               @ (((unsigned) &VREFCON0)*8) + 6;
#define                                 FVRST_bit           BANKMASK(VREFCON0), 6
extern volatile __bit                   GCEN1               @ (((unsigned) &SSP1CON2)*8) + 7;
#define                                 GCEN1_bit           BANKMASK(SSP1CON2), 7
extern volatile __bit                   GCEN2               @ (((unsigned) &SSP2CON2)*8) + 7;
#define                                 GCEN2_bit           BANKMASK(SSP2CON2), 7
extern volatile __bit                   GIE                 @ (((unsigned) &INTCON)*8) + 7;
#define                                 GIE_bit             BANKMASK(INTCON), 7
extern volatile __bit                   GIEH                @ (((unsigned) &INTCON)*8) + 7;
#define                                 GIEH_bit            BANKMASK(INTCON), 7
extern volatile __bit                   GIEL                @ (((unsigned) &INTCON)*8) + 6;
#define                                 GIEL_bit            BANKMASK(INTCON), 6
extern volatile __bit                   GIE_GIEH            @ (((unsigned) &INTCON)*8) + 7;
#define                                 GIE_GIEH_bit        BANKMASK(INTCON), 7
extern volatile __bit                   GO                  @ (((unsigned) &ADCON0)*8) + 1;
#define                                 GO_bit              BANKMASK(ADCON0), 1
extern volatile __bit                   GODONE              @ (((unsigned) &ADCON0)*8) + 1;
#define                                 GODONE_bit          BANKMASK(ADCON0), 1
extern volatile __bit                   GO_DONE             @ (((unsigned) &ADCON0)*8) + 1;
#define                                 GO_DONE_bit         BANKMASK(ADCON0), 1
extern volatile __bit                   GO_NOT_DONE         @ (((unsigned) &ADCON0)*8) + 1;
#define                                 GO_NOT_DONE_bit     BANKMASK(ADCON0), 1
extern volatile __bit                   GO_nDONE            @ (((unsigned) &ADCON0)*8) + 1;
#define                                 GO_nDONE_bit        BANKMASK(ADCON0), 1
extern volatile __bit                   HFIOFS              @ (((unsigned) &OSCCON)*8) + 2;
#define                                 HFIOFS_bit          BANKMASK(OSCCON), 2
extern volatile __bit                   HLVDEN              @ (((unsigned) &HLVDCON)*8) + 4;
#define                                 HLVDEN_bit          BANKMASK(HLVDCON), 4
extern volatile __bit                   HLVDIE              @ (((unsigned) &PIE2)*8) + 2;
#define                                 HLVDIE_bit          BANKMASK(PIE2), 2
extern volatile __bit                   HLVDIF              @ (((unsigned) &PIR2)*8) + 2;
#define                                 HLVDIF_bit          BANKMASK(PIR2), 2
extern volatile __bit                   HLVDIN              @ (((unsigned) &PORTA)*8) + 5;
#define                                 HLVDIN_bit          BANKMASK(PORTA), 5
extern volatile __bit                   HLVDIP              @ (((unsigned) &IPR2)*8) + 2;
#define                                 HLVDIP_bit          BANKMASK(IPR2), 2
extern volatile __bit                   HLVDL0              @ (((unsigned) &HLVDCON)*8) + 0;
#define                                 HLVDL0_bit          BANKMASK(HLVDCON), 0
extern volatile __bit                   HLVDL1              @ (((unsigned) &HLVDCON)*8) + 1;
#define                                 HLVDL1_bit          BANKMASK(HLVDCON), 1
extern volatile __bit                   HLVDL2              @ (((unsigned) &HLVDCON)*8) + 2;
#define                                 HLVDL2_bit          BANKMASK(HLVDCON), 2
extern volatile __bit                   HLVDL3              @ (((unsigned) &HLVDCON)*8) + 3;
#define                                 HLVDL3_bit          BANKMASK(HLVDCON), 3
extern volatile __bit                   I2C_DAT             @ (((unsigned) &SSP1STAT)*8) + 5;
#define                                 I2C_DAT_bit         BANKMASK(SSP1STAT), 5
extern volatile __bit                   I2C_DAT2            @ (((unsigned) &SSP2STAT)*8) + 5;
#define                                 I2C_DAT2_bit        BANKMASK(SSP2STAT), 5
extern volatile __bit                   I2C_READ            @ (((unsigned) &SSP1STAT)*8) + 2;
#define                                 I2C_READ_bit        BANKMASK(SSP1STAT), 2
extern volatile __bit                   I2C_READ2           @ (((unsigned) &SSP2STAT)*8) + 2;
#define                                 I2C_READ2_bit       BANKMASK(SSP2STAT), 2
extern volatile __bit                   I2C_START           @ (((unsigned) &SSP1STAT)*8) + 3;
#define                                 I2C_START_bit       BANKMASK(SSP1STAT), 3
extern volatile __bit                   I2C_START2          @ (((unsigned) &SSP2STAT)*8) + 3;
#define                                 I2C_START2_bit      BANKMASK(SSP2STAT), 3
extern volatile __bit                   I2C_STOP            @ (((unsigned) &SSP1STAT)*8) + 4;
#define                                 I2C_STOP_bit        BANKMASK(SSP1STAT), 4
extern volatile __bit                   I2C_STOP2           @ (((unsigned) &SSP2STAT)*8) + 4;
#define                                 I2C_STOP2_bit       BANKMASK(SSP2STAT), 4
extern volatile __bit                   IDISSEN             @ (((unsigned) &CTMUCONH)*8) + 1;
#define                                 IDISSEN_bit         BANKMASK(CTMUCONH), 1
extern volatile __bit                   IDLEN               @ (((unsigned) &OSCCON)*8) + 7;
#define                                 IDLEN_bit           BANKMASK(OSCCON), 7
extern volatile __bit                   INT0                @ (((unsigned) &PORTB)*8) + 0;
#define                                 INT0_bit            BANKMASK(PORTB), 0
extern volatile __bit                   INT0E               @ (((unsigned) &INTCON)*8) + 4;
#define                                 INT0E_bit           BANKMASK(INTCON), 4
extern volatile __bit                   INT0F               @ (((unsigned) &INTCON)*8) + 1;
#define                                 INT0F_bit           BANKMASK(INTCON), 1
extern volatile __bit                   INT0IE              @ (((unsigned) &INTCON)*8) + 4;
#define                                 INT0IE_bit          BANKMASK(INTCON), 4
extern volatile __bit                   INT0IF              @ (((unsigned) &INTCON)*8) + 1;
#define                                 INT0IF_bit          BANKMASK(INTCON), 1
extern volatile __bit                   INT1                @ (((unsigned) &PORTB)*8) + 1;
#define                                 INT1_bit            BANKMASK(PORTB), 1
extern volatile __bit                   INT1E               @ (((unsigned) &INTCON3)*8) + 3;
#define                                 INT1E_bit           BANKMASK(INTCON3), 3
extern volatile __bit                   INT1F               @ (((unsigned) &INTCON3)*8) + 0;
#define                                 INT1F_bit           BANKMASK(INTCON3), 0
extern volatile __bit                   INT1IE              @ (((unsigned) &INTCON3)*8) + 3;
#define                                 INT1IE_bit          BANKMASK(INTCON3), 3
extern volatile __bit                   INT1IF              @ (((unsigned) &INTCON3)*8) + 0;
#define                                 INT1IF_bit          BANKMASK(INTCON3), 0
extern volatile __bit                   INT1IP              @ (((unsigned) &INTCON3)*8) + 6;
#define                                 INT1IP_bit          BANKMASK(INTCON3), 6
extern volatile __bit                   INT1P               @ (((unsigned) &INTCON3)*8) + 6;
#define                                 INT1P_bit           BANKMASK(INTCON3), 6
extern volatile __bit                   INT2                @ (((unsigned) &PORTB)*8) + 2;
#define                                 INT2_bit            BANKMASK(PORTB), 2
extern volatile __bit                   INT2E               @ (((unsigned) &INTCON3)*8) + 4;
#define                                 INT2E_bit           BANKMASK(INTCON3), 4
extern volatile __bit                   INT2F               @ (((unsigned) &INTCON3)*8) + 1;
#define                                 INT2F_bit           BANKMASK(INTCON3), 1
extern volatile __bit                   INT2IE              @ (((unsigned) &INTCON3)*8) + 4;
#define                                 INT2IE_bit          BANKMASK(INTCON3), 4
extern volatile __bit                   INT2IF              @ (((unsigned) &INTCON3)*8) + 1;
#define                                 INT2IF_bit          BANKMASK(INTCON3), 1
extern volatile __bit                   INT2IP              @ (((unsigned) &INTCON3)*8) + 7;
#define                                 INT2IP_bit          BANKMASK(INTCON3), 7
extern volatile __bit                   INT2P               @ (((unsigned) &INTCON3)*8) + 7;
#define                                 INT2P_bit           BANKMASK(INTCON3), 7
extern volatile __bit                   INTEDG0             @ (((unsigned) &INTCON2)*8) + 6;
#define                                 INTEDG0_bit         BANKMASK(INTCON2), 6
extern volatile __bit                   INTEDG1             @ (((unsigned) &INTCON2)*8) + 5;
#define                                 INTEDG1_bit         BANKMASK(INTCON2), 5
extern volatile __bit                   INTEDG2             @ (((unsigned) &INTCON2)*8) + 4;
#define                                 INTEDG2_bit         BANKMASK(INTCON2), 4
extern volatile __bit                   INTSRC              @ (((unsigned) &OSCTUNE)*8) + 7;
#define                                 INTSRC_bit          BANKMASK(OSCTUNE), 7
extern volatile __bit                   IOCB4               @ (((unsigned) &IOCB)*8) + 4;
#define                                 IOCB4_bit           BANKMASK(IOCB), 4
extern volatile __bit                   IOCB5               @ (((unsigned) &IOCB)*8) + 5;
#define                                 IOCB5_bit           BANKMASK(IOCB), 5
extern volatile __bit                   IOCB6               @ (((unsigned) &IOCB)*8) + 6;
#define                                 IOCB6_bit           BANKMASK(IOCB), 6
extern volatile __bit                   IOCB7               @ (((unsigned) &IOCB)*8) + 7;
#define                                 IOCB7_bit           BANKMASK(IOCB), 7
extern volatile __bit                   IOFS                @ (((unsigned) &OSCCON)*8) + 2;
#define                                 IOFS_bit            BANKMASK(OSCCON), 2
extern volatile __bit                   IPEN                @ (((unsigned) &RCON)*8) + 7;
#define                                 IPEN_bit            BANKMASK(RCON), 7
extern volatile __bit                   IRCF0               @ (((unsigned) &OSCCON)*8) + 4;
#define                                 IRCF0_bit           BANKMASK(OSCCON), 4
extern volatile __bit                   IRCF1               @ (((unsigned) &OSCCON)*8) + 5;
#define                                 IRCF1_bit           BANKMASK(OSCCON), 5
extern volatile __bit                   IRCF2               @ (((unsigned) &OSCCON)*8) + 6;
#define                                 IRCF2_bit           BANKMASK(OSCCON), 6
extern volatile __bit                   IRNG0               @ (((unsigned) &CTMUICON)*8) + 0;
#define                                 IRNG0_bit           BANKMASK(CTMUICON), 0
extern volatile __bit                   IRNG1               @ (((unsigned) &CTMUICON)*8) + 1;
#define                                 IRNG1_bit           BANKMASK(CTMUICON), 1
extern volatile __bit                   IRVST               @ (((unsigned) &HLVDCON)*8) + 5;
#define                                 IRVST_bit           BANKMASK(HLVDCON), 5
extern volatile __bit                   ITRIM0              @ (((unsigned) &CTMUICON)*8) + 2;
#define                                 ITRIM0_bit          BANKMASK(CTMUICON), 2
extern volatile __bit                   ITRIM1              @ (((unsigned) &CTMUICON)*8) + 3;
#define                                 ITRIM1_bit          BANKMASK(CTMUICON), 3
extern volatile __bit                   ITRIM2              @ (((unsigned) &CTMUICON)*8) + 4;
#define                                 ITRIM2_bit          BANKMASK(CTMUICON), 4
extern volatile __bit                   ITRIM3              @ (((unsigned) &CTMUICON)*8) + 5;
#define                                 ITRIM3_bit          BANKMASK(CTMUICON), 5
extern volatile __bit                   ITRIM4              @ (((unsigned) &CTMUICON)*8) + 6;
#define                                 ITRIM4_bit          BANKMASK(CTMUICON), 6
extern volatile __bit                   ITRIM5              @ (((unsigned) &CTMUICON)*8) + 7;
#define                                 ITRIM5_bit          BANKMASK(CTMUICON), 7
extern volatile __bit                   IVRST               @ (((unsigned) &HLVDCON)*8) + 5;
#define                                 IVRST_bit           BANKMASK(HLVDCON), 5
extern volatile __bit                   KBI0                @ (((unsigned) &PORTB)*8) + 4;
#define                                 KBI0_bit            BANKMASK(PORTB), 4
extern volatile __bit                   KBI1                @ (((unsigned) &PORTB)*8) + 5;
#define                                 KBI1_bit            BANKMASK(PORTB), 5
extern volatile __bit                   KBI2                @ (((unsigned) &PORTB)*8) + 6;
#define                                 KBI2_bit            BANKMASK(PORTB), 6
extern volatile __bit                   KBI3                @ (((unsigned) &PORTB)*8) + 7;
#define                                 KBI3_bit            BANKMASK(PORTB), 7
extern volatile __bit                   LA0                 @ (((unsigned) &LATA)*8) + 0;
#define                                 LA0_bit             BANKMASK(LATA), 0
extern volatile __bit                   LA1                 @ (((unsigned) &LATA)*8) + 1;
#define                                 LA1_bit             BANKMASK(LATA), 1
extern volatile __bit                   LA2                 @ (((unsigned) &LATA)*8) + 2;
#define                                 LA2_bit             BANKMASK(LATA), 2
extern volatile __bit                   LA3                 @ (((unsigned) &LATA)*8) + 3;
#define                                 LA3_bit             BANKMASK(LATA), 3
extern volatile __bit                   LA4                 @ (((unsigned) &LATA)*8) + 4;
#define                                 LA4_bit             BANKMASK(LATA), 4
extern volatile __bit                   LA5                 @ (((unsigned) &LATA)*8) + 5;
#define                                 LA5_bit             BANKMASK(LATA), 5
extern volatile __bit                   LA6                 @ (((unsigned) &LATA)*8) + 6;
#define                                 LA6_bit             BANKMASK(LATA), 6
extern volatile __bit                   LA7                 @ (((unsigned) &LATA)*8) + 7;
#define                                 LA7_bit             BANKMASK(LATA), 7
extern volatile __bit                   LATA0               @ (((unsigned) &LATA)*8) + 0;
#define                                 LATA0_bit           BANKMASK(LATA), 0
extern volatile __bit                   LATA1               @ (((unsigned) &LATA)*8) + 1;
#define                                 LATA1_bit           BANKMASK(LATA), 1
extern volatile __bit                   LATA2               @ (((unsigned) &LATA)*8) + 2;
#define                                 LATA2_bit           BANKMASK(LATA), 2
extern volatile __bit                   LATA3               @ (((unsigned) &LATA)*8) + 3;
#define                                 LATA3_bit           BANKMASK(LATA), 3
extern volatile __bit                   LATA4               @ (((unsigned) &LATA)*8) + 4;
#define                                 LATA4_bit           BANKMASK(LATA), 4
extern volatile __bit                   LATA5               @ (((unsigned) &LATA)*8) + 5;
#define                                 LATA5_bit           BANKMASK(LATA), 5
extern volatile __bit                   LATA6               @ (((unsigned) &LATA)*8) + 6;
#define                                 LATA6_bit           BANKMASK(LATA), 6
extern volatile __bit                   LATA7               @ (((unsigned) &LATA)*8) + 7;
#define                                 LATA7_bit           BANKMASK(LATA), 7
extern volatile __bit                   LATB0               @ (((unsigned) &LATB)*8) + 0;
#define                                 LATB0_bit           BANKMASK(LATB), 0
extern volatile __bit                   LATB1               @ (((unsigned) &LATB)*8) + 1;
#define                                 LATB1_bit           BANKMASK(LATB), 1
extern volatile __bit                   LATB2               @ (((unsigned) &LATB)*8) + 2;
#define                                 LATB2_bit           BANKMASK(LATB), 2
extern volatile __bit                   LATB3               @ (((unsigned) &LATB)*8) + 3;
#define                                 LATB3_bit           BANKMASK(LATB), 3
extern volatile __bit                   LATB4               @ (((unsigned) &LATB)*8) + 4;
#define                                 LATB4_bit           BANKMASK(LATB), 4
extern volatile __bit                   LATB5               @ (((unsigned) &LATB)*8) + 5;
#define                                 LATB5_bit           BANKMASK(LATB), 5
extern volatile __bit                   LATB6               @ (((unsigned) &LATB)*8) + 6;
#define                                 LATB6_bit           BANKMASK(LATB), 6
extern volatile __bit                   LATB7               @ (((unsigned) &LATB)*8) + 7;
#define                                 LATB7_bit           BANKMASK(LATB), 7
extern volatile __bit                   LATC0               @ (((unsigned) &LATC)*8) + 0;
#define                                 LATC0_bit           BANKMASK(LATC), 0
extern volatile __bit                   LATC1               @ (((unsigned) &LATC)*8) + 1;
#define                                 LATC1_bit           BANKMASK(LATC), 1
extern volatile __bit                   LATC2               @ (((unsigned) &LATC)*8) + 2;
#define                                 LATC2_bit           BANKMASK(LATC), 2
extern volatile __bit                   LATC3               @ (((unsigned) &LATC)*8) + 3;
#define                                 LATC3_bit           BANKMASK(LATC), 3
extern volatile __bit                   LATC4               @ (((unsigned) &LATC)*8) + 4;
#define                                 LATC4_bit           BANKMASK(LATC), 4
extern volatile __bit                   LATC5               @ (((unsigned) &LATC)*8) + 5;
#define                                 LATC5_bit           BANKMASK(LATC), 5
extern volatile __bit                   LATC6               @ (((unsigned) &LATC)*8) + 6;
#define                                 LATC6_bit           BANKMASK(LATC), 6
extern volatile __bit                   LATC7               @ (((unsigned) &LATC)*8) + 7;
#define                                 LATC7_bit           BANKMASK(LATC), 7
extern volatile __bit                   LB0                 @ (((unsigned) &LATB)*8) + 0;
#define                                 LB0_bit             BANKMASK(LATB), 0
extern volatile __bit                   LB1                 @ (((unsigned) &LATB)*8) + 1;
#define                                 LB1_bit             BANKMASK(LATB), 1
extern volatile __bit                   LB2                 @ (((unsigned) &LATB)*8) + 2;
#define                                 LB2_bit             BANKMASK(LATB), 2
extern volatile __bit                   LB3                 @ (((unsigned) &LATB)*8) + 3;
#define                                 LB3_bit             BANKMASK(LATB), 3
extern volatile __bit                   LB4                 @ (((unsigned) &LATB)*8) + 4;
#define                                 LB4_bit             BANKMASK(LATB), 4
extern volatile __bit                   LB5                 @ (((unsigned) &LATB)*8) + 5;
#define                                 LB5_bit             BANKMASK(LATB), 5
extern volatile __bit                   LB6                 @ (((unsigned) &LATB)*8) + 6;
#define                                 LB6_bit             BANKMASK(LATB), 6
extern volatile __bit                   LB7                 @ (((unsigned) &LATB)*8) + 7;
#define                                 LB7_bit             BANKMASK(LATB), 7
extern volatile __bit                   LC0                 @ (((unsigned) &LATC)*8) + 0;
#define                                 LC0_bit             BANKMASK(LATC), 0
extern volatile __bit                   LC1                 @ (((unsigned) &LATC)*8) + 1;
#define                                 LC1_bit             BANKMASK(LATC), 1
extern volatile __bit                   LC2                 @ (((unsigned) &LATC)*8) + 2;
#define                                 LC2_bit             BANKMASK(LATC), 2
extern volatile __bit                   LC3                 @ (((unsigned) &LATC)*8) + 3;
#define                                 LC3_bit             BANKMASK(LATC), 3
extern volatile __bit                   LC4                 @ (((unsigned) &LATC)*8) + 4;
#define                                 LC4_bit             BANKMASK(LATC), 4
extern volatile __bit                   LC5                 @ (((unsigned) &LATC)*8) + 5;
#define                                 LC5_bit             BANKMASK(LATC), 5
extern volatile __bit                   LC6                 @ (((unsigned) &LATC)*8) + 6;
#define                                 LC6_bit             BANKMASK(LATC), 6
extern volatile __bit                   LC7                 @ (((unsigned) &LATC)*8) + 7;
#define                                 LC7_bit             BANKMASK(LATC), 7
extern volatile __bit                   LFIOFS              @ (((unsigned) &OSCCON2)*8) + 0;
#define                                 LFIOFS_bit          BANKMASK(OSCCON2), 0
extern volatile __bit                   LVDEN               @ (((unsigned) &HLVDCON)*8) + 4;
#define                                 LVDEN_bit           BANKMASK(HLVDCON), 4
extern volatile __bit                   LVDIE               @ (((unsigned) &PIE2)*8) + 2;
#define                                 LVDIE_bit           BANKMASK(PIE2), 2
extern volatile __bit                   LVDIF               @ (((unsigned) &PIR2)*8) + 2;
#define                                 LVDIF_bit           BANKMASK(PIR2), 2
extern volatile __bit                   LVDIN               @ (((unsigned) &PORTA)*8) + 5;
#define                                 LVDIN_bit           BANKMASK(PORTA), 5
extern volatile __bit                   LVDIP               @ (((unsigned) &IPR2)*8) + 2;
#define                                 LVDIP_bit           BANKMASK(IPR2), 2
extern volatile __bit                   LVDL0               @ (((unsigned) &HLVDCON)*8) + 0;
#define                                 LVDL0_bit           BANKMASK(HLVDCON), 0
extern volatile __bit                   LVDL1               @ (((unsigned) &HLVDCON)*8) + 1;
#define                                 LVDL1_bit           BANKMASK(HLVDCON), 1
extern volatile __bit                   LVDL2               @ (((unsigned) &HLVDCON)*8) + 2;
#define                                 LVDL2_bit           BANKMASK(HLVDCON), 2
extern volatile __bit                   LVDL3               @ (((unsigned) &HLVDCON)*8) + 3;
#define                                 LVDL3_bit           BANKMASK(HLVDCON), 3
extern volatile __bit                   LVV0                @ (((unsigned) &HLVDCON)*8) + 0;
#define                                 LVV0_bit            BANKMASK(HLVDCON), 0
extern volatile __bit                   LVV1                @ (((unsigned) &HLVDCON)*8) + 1;
#define                                 LVV1_bit            BANKMASK(HLVDCON), 1
extern volatile __bit                   LVV2                @ (((unsigned) &HLVDCON)*8) + 2;
#define                                 LVV2_bit            BANKMASK(HLVDCON), 2
extern volatile __bit                   LVV3                @ (((unsigned) &HLVDCON)*8) + 3;
#define                                 LVV3_bit            BANKMASK(HLVDCON), 3
extern volatile __bit                   MC1OUT              @ (((unsigned) &CM2CON1)*8) + 7;
#define                                 MC1OUT_bit          BANKMASK(CM2CON1), 7
extern volatile __bit                   MC2OUT              @ (((unsigned) &CM2CON1)*8) + 6;
#define                                 MC2OUT_bit          BANKMASK(CM2CON1), 6
extern volatile __bit                   MCLR                @ (((unsigned) &PORTE)*8) + 3;
#define                                 MCLR_bit            BANKMASK(PORTE), 3
extern volatile __bit                   MFIOFS              @ (((unsigned) &OSCCON2)*8) + 1;
#define                                 MFIOFS_bit          BANKMASK(OSCCON2), 1
extern volatile __bit                   MFIOSEL             @ (((unsigned) &OSCCON2)*8) + 4;
#define                                 MFIOSEL_bit         BANKMASK(OSCCON2), 4
extern volatile __bit                   MSK01               @ (((unsigned) &SSP1ADD)*8) + 0;
#define                                 MSK01_bit           BANKMASK(SSP1ADD), 0
extern volatile __bit                   MSK02               @ (((unsigned) &SSP2ADD)*8) + 0;
#define                                 MSK02_bit           BANKMASK(SSP2ADD), 0
extern volatile __bit                   MSK11               @ (((unsigned) &SSP1ADD)*8) + 1;
#define                                 MSK11_bit           BANKMASK(SSP1ADD), 1
extern volatile __bit                   MSK12               @ (((unsigned) &SSP2ADD)*8) + 1;
#define                                 MSK12_bit           BANKMASK(SSP2ADD), 1
extern volatile __bit                   MSK21               @ (((unsigned) &SSP1ADD)*8) + 2;
#define                                 MSK21_bit           BANKMASK(SSP1ADD), 2
extern volatile __bit                   MSK22               @ (((unsigned) &SSP2ADD)*8) + 2;
#define                                 MSK22_bit           BANKMASK(SSP2ADD), 2
extern volatile __bit                   MSK31               @ (((unsigned) &SSP1ADD)*8) + 3;
#define                                 MSK31_bit           BANKMASK(SSP1ADD), 3
extern volatile __bit                   MSK32               @ (((unsigned) &SSP2ADD)*8) + 3;
#define                                 MSK32_bit           BANKMASK(SSP2ADD), 3
extern volatile __bit                   MSK41               @ (((unsigned) &SSP1ADD)*8) + 4;
#define                                 MSK41_bit           BANKMASK(SSP1ADD), 4
extern volatile __bit                   MSK42               @ (((unsigned) &SSP2ADD)*8) + 4;
#define                                 MSK42_bit           BANKMASK(SSP2ADD), 4
extern volatile __bit                   MSK51               @ (((unsigned) &SSP1ADD)*8) + 5;
#define                                 MSK51_bit           BANKMASK(SSP1ADD), 5
extern volatile __bit                   MSK52               @ (((unsigned) &SSP2ADD)*8) + 5;
#define                                 MSK52_bit           BANKMASK(SSP2ADD), 5
extern volatile __bit                   MSK61               @ (((unsigned) &SSP1ADD)*8) + 6;
#define                                 MSK61_bit           BANKMASK(SSP1ADD), 6
extern volatile __bit                   MSK62               @ (((unsigned) &SSP2ADD)*8) + 6;
#define                                 MSK62_bit           BANKMASK(SSP2ADD), 6
extern volatile __bit                   MSK71               @ (((unsigned) &SSP1ADD)*8) + 7;
#define                                 MSK71_bit           BANKMASK(SSP1ADD), 7
extern volatile __bit                   MSK72               @ (((unsigned) &SSP2ADD)*8) + 7;
#define                                 MSK72_bit           BANKMASK(SSP2ADD), 7
extern volatile __bit                   MSSP1MD             @ (((unsigned) &PMD1)*8) + 6;
#define                                 MSSP1MD_bit         BANKMASK(PMD1), 6
extern volatile __bit                   MSSP2MD             @ (((unsigned) &PMD1)*8) + 7;
#define                                 MSSP2MD_bit         BANKMASK(PMD1), 7
extern volatile __bit                   NEGATIVE            @ (((unsigned) &STATUS)*8) + 4;
#define                                 NEGATIVE_bit        BANKMASK(STATUS), 4
extern volatile __bit                   NOT_A               @ (((unsigned) &SSP1STAT)*8) + 5;
#define                                 NOT_A_bit           BANKMASK(SSP1STAT), 5
extern volatile __bit                   NOT_A2              @ (((unsigned) &SSP2STAT)*8) + 5;
#define                                 NOT_A2_bit          BANKMASK(SSP2STAT), 5
extern volatile __bit                   NOT_ADDRESS2        @ (((unsigned) &SSP2STAT)*8) + 5;
#define                                 NOT_ADDRESS2_bit    BANKMASK(SSP2STAT), 5
extern volatile __bit                   NOT_BOR             @ (((unsigned) &RCON)*8) + 0;
#define                                 NOT_BOR_bit         BANKMASK(RCON), 0
extern volatile __bit                   NOT_DONE            @ (((unsigned) &ADCON0)*8) + 1;
#define                                 NOT_DONE_bit        BANKMASK(ADCON0), 1
extern volatile __bit                   NOT_MCLR            @ (((unsigned) &PORTE)*8) + 3;
#define                                 NOT_MCLR_bit        BANKMASK(PORTE), 3
extern volatile __bit                   NOT_PD              @ (((unsigned) &RCON)*8) + 2;
#define                                 NOT_PD_bit          BANKMASK(RCON), 2
extern volatile __bit                   NOT_POR             @ (((unsigned) &RCON)*8) + 1;
#define                                 NOT_POR_bit         BANKMASK(RCON), 1
extern volatile __bit                   NOT_RBPU            @ (((unsigned) &INTCON2)*8) + 7;
#define                                 NOT_RBPU_bit        BANKMASK(INTCON2), 7
extern volatile __bit                   NOT_RI              @ (((unsigned) &RCON)*8) + 4;
#define                                 NOT_RI_bit          BANKMASK(RCON), 4
extern volatile __bit                   NOT_SS              @ (((unsigned) &PORTA)*8) + 5;
#define                                 NOT_SS_bit          BANKMASK(PORTA), 5
extern volatile __bit                   NOT_SS1             @ (((unsigned) &PORTA)*8) + 5;
#define                                 NOT_SS1_bit         BANKMASK(PORTA), 5
extern volatile __bit                   NOT_SS2             @ (((unsigned) &PORTB)*8) + 0;
#define                                 NOT_SS2_bit         BANKMASK(PORTB), 0
extern volatile __bit                   NOT_T1SYNC          @ (((unsigned) &T1CON)*8) + 2;
#define                                 NOT_T1SYNC_bit      BANKMASK(T1CON), 2
extern volatile __bit                   NOT_T3SYNC          @ (((unsigned) &T3CON)*8) + 2;
#define                                 NOT_T3SYNC_bit      BANKMASK(T3CON), 2
extern volatile __bit                   NOT_T5SYNC          @ (((unsigned) &T5CON)*8) + 2;
#define                                 NOT_T5SYNC_bit      BANKMASK(T5CON), 2
extern volatile __bit                   NOT_TO              @ (((unsigned) &RCON)*8) + 3;
#define                                 NOT_TO_bit          BANKMASK(RCON), 3
extern volatile __bit                   NOT_W               @ (((unsigned) &SSP1STAT)*8) + 2;
#define                                 NOT_W_bit           BANKMASK(SSP1STAT), 2
extern volatile __bit                   NOT_W2              @ (((unsigned) &SSP2STAT)*8) + 2;
#define                                 NOT_W2_bit          BANKMASK(SSP2STAT), 2
extern volatile __bit                   NOT_WRITE2          @ (((unsigned) &SSP2STAT)*8) + 2;
#define                                 NOT_WRITE2_bit      BANKMASK(SSP2STAT), 2
extern volatile __bit                   NVCFG0              @ (((unsigned) &ADCON1)*8) + 0;
#define                                 NVCFG0_bit          BANKMASK(ADCON1), 0
extern volatile __bit                   NVCFG1              @ (((unsigned) &ADCON1)*8) + 1;
#define                                 NVCFG1_bit          BANKMASK(ADCON1), 1
extern volatile __bit                   OERR1               @ (((unsigned) &RCSTA1)*8) + 1;
#define                                 OERR1_bit           BANKMASK(RCSTA1), 1
extern volatile __bit                   OERR2               @ (((unsigned) &RCSTA2)*8) + 1;
#define                                 OERR2_bit           BANKMASK(RCSTA2), 1
extern volatile __bit                   OSCFIE              @ (((unsigned) &PIE2)*8) + 7;
#define                                 OSCFIE_bit          BANKMASK(PIE2), 7
extern volatile __bit                   OSCFIF              @ (((unsigned) &PIR2)*8) + 7;
#define                                 OSCFIF_bit          BANKMASK(PIR2), 7
extern volatile __bit                   OSCFIP              @ (((unsigned) &IPR2)*8) + 7;
#define                                 OSCFIP_bit          BANKMASK(IPR2), 7
extern volatile __bit                   OSTS                @ (((unsigned) &OSCCON)*8) + 3;
#define                                 OSTS_bit            BANKMASK(OSCCON), 3
extern volatile __bit                   OV                  @ (((unsigned) &STATUS)*8) + 3;
#define                                 OV_bit              BANKMASK(STATUS), 3
extern volatile __bit                   OVERFLOW            @ (((unsigned) &STATUS)*8) + 3;
#define                                 OVERFLOW_bit        BANKMASK(STATUS), 3
extern volatile __bit                   P1A                 @ (((unsigned) &PORTC)*8) + 2;
#define                                 P1A_bit             BANKMASK(PORTC), 2
extern volatile __bit                   P1B                 @ (((unsigned) &PORTB)*8) + 2;
#define                                 P1B_bit             BANKMASK(PORTB), 2
extern volatile __bit                   P1C                 @ (((unsigned) &PORTB)*8) + 1;
#define                                 P1C_bit             BANKMASK(PORTB), 1
extern volatile __bit                   P1D                 @ (((unsigned) &PORTB)*8) + 4;
#define                                 P1D_bit             BANKMASK(PORTB), 4
extern volatile __bit                   P1DC0               @ (((unsigned) &PWM1CON)*8) + 0;
#define                                 P1DC0_bit           BANKMASK(PWM1CON), 0
extern volatile __bit                   P1DC1               @ (((unsigned) &PWM1CON)*8) + 1;
#define                                 P1DC1_bit           BANKMASK(PWM1CON), 1
extern volatile __bit                   P1DC2               @ (((unsigned) &PWM1CON)*8) + 2;
#define                                 P1DC2_bit           BANKMASK(PWM1CON), 2
extern volatile __bit                   P1DC3               @ (((unsigned) &PWM1CON)*8) + 3;
#define                                 P1DC3_bit           BANKMASK(PWM1CON), 3
extern volatile __bit                   P1DC4               @ (((unsigned) &PWM1CON)*8) + 4;
#define                                 P1DC4_bit           BANKMASK(PWM1CON), 4
extern volatile __bit                   P1DC5               @ (((unsigned) &PWM1CON)*8) + 5;
#define                                 P1DC5_bit           BANKMASK(PWM1CON), 5
extern volatile __bit                   P1DC6               @ (((unsigned) &PWM1CON)*8) + 6;
#define                                 P1DC6_bit           BANKMASK(PWM1CON), 6
extern volatile __bit                   P1M0                @ (((unsigned) &CCP1CON)*8) + 6;
#define                                 P1M0_bit            BANKMASK(CCP1CON), 6
extern volatile __bit                   P1M1                @ (((unsigned) &CCP1CON)*8) + 7;
#define                                 P1M1_bit            BANKMASK(CCP1CON), 7
extern volatile __bit                   P1RSEN              @ (((unsigned) &PWM1CON)*8) + 7;
#define                                 P1RSEN_bit          BANKMASK(PWM1CON), 7
extern volatile __bit                   P1SSAC0             @ (((unsigned) &ECCP1AS)*8) + 2;
#define                                 P1SSAC0_bit         BANKMASK(ECCP1AS), 2
extern volatile __bit                   P1SSAC1             @ (((unsigned) &ECCP1AS)*8) + 3;
#define                                 P1SSAC1_bit         BANKMASK(ECCP1AS), 3
extern volatile __bit                   P1SSBD0             @ (((unsigned) &ECCP1AS)*8) + 0;
#define                                 P1SSBD0_bit         BANKMASK(ECCP1AS), 0
extern volatile __bit                   P1SSBD1             @ (((unsigned) &ECCP1AS)*8) + 1;
#define                                 P1SSBD1_bit         BANKMASK(ECCP1AS), 1
extern volatile __bit                   P2                  @ (((unsigned) &SSP2STAT)*8) + 4;
#define                                 P2_bit              BANKMASK(SSP2STAT), 4
extern volatile __bit                   P2DC0               @ (((unsigned) &PWM2CON)*8) + 0;
#define                                 P2DC0_bit           BANKMASK(PWM2CON), 0
extern volatile __bit                   P2DC02              @ (((unsigned) &PSTR2CON)*8) + 0;
#define                                 P2DC02_bit          BANKMASK(PSTR2CON), 0
extern volatile __bit                   P2DC0CON            @ (((unsigned) &PSTR2CON)*8) + 0;
#define                                 P2DC0CON_bit        BANKMASK(PSTR2CON), 0
extern volatile __bit                   P2DC1               @ (((unsigned) &PWM2CON)*8) + 1;
#define                                 P2DC1_bit           BANKMASK(PWM2CON), 1
extern volatile __bit                   P2DC12              @ (((unsigned) &PSTR2CON)*8) + 1;
#define                                 P2DC12_bit          BANKMASK(PSTR2CON), 1
extern volatile __bit                   P2DC1CON            @ (((unsigned) &PSTR2CON)*8) + 1;
#define                                 P2DC1CON_bit        BANKMASK(PSTR2CON), 1
extern volatile __bit                   P2DC2               @ (((unsigned) &PWM2CON)*8) + 2;
#define                                 P2DC2_bit           BANKMASK(PWM2CON), 2
extern volatile __bit                   P2DC22              @ (((unsigned) &PSTR2CON)*8) + 2;
#define                                 P2DC22_bit          BANKMASK(PSTR2CON), 2
extern volatile __bit                   P2DC2CON            @ (((unsigned) &PSTR2CON)*8) + 2;
#define                                 P2DC2CON_bit        BANKMASK(PSTR2CON), 2
extern volatile __bit                   P2DC3               @ (((unsigned) &PWM2CON)*8) + 3;
#define                                 P2DC3_bit           BANKMASK(PWM2CON), 3
extern volatile __bit                   P2DC32              @ (((unsigned) &PSTR2CON)*8) + 3;
#define                                 P2DC32_bit          BANKMASK(PSTR2CON), 3
extern volatile __bit                   P2DC3CON            @ (((unsigned) &PSTR2CON)*8) + 3;
#define                                 P2DC3CON_bit        BANKMASK(PSTR2CON), 3
extern volatile __bit                   P2DC4               @ (((unsigned) &PWM2CON)*8) + 4;
#define                                 P2DC4_bit           BANKMASK(PWM2CON), 4
extern volatile __bit                   P2DC42              @ (((unsigned) &PSTR2CON)*8) + 4;
#define                                 P2DC42_bit          BANKMASK(PSTR2CON), 4
extern volatile __bit                   P2DC4CON            @ (((unsigned) &PSTR2CON)*8) + 4;
#define                                 P2DC4CON_bit        BANKMASK(PSTR2CON), 4
extern volatile __bit                   P2DC5               @ (((unsigned) &PWM2CON)*8) + 5;
#define                                 P2DC5_bit           BANKMASK(PWM2CON), 5
extern volatile __bit                   P2DC6               @ (((unsigned) &PWM2CON)*8) + 6;
#define                                 P2DC6_bit           BANKMASK(PWM2CON), 6
extern volatile __bit                   P2M0                @ (((unsigned) &CCP2CON)*8) + 6;
#define                                 P2M0_bit            BANKMASK(CCP2CON), 6
extern volatile __bit                   P2M1                @ (((unsigned) &CCP2CON)*8) + 7;
#define                                 P2M1_bit            BANKMASK(CCP2CON), 7
extern volatile __bit                   P2RSEN              @ (((unsigned) &PWM2CON)*8) + 7;
#define                                 P2RSEN_bit          BANKMASK(PWM2CON), 7
extern volatile __bit                   P2SSAC0             @ (((unsigned) &ECCP2AS)*8) + 2;
#define                                 P2SSAC0_bit         BANKMASK(ECCP2AS), 2
extern volatile __bit                   P2SSAC1             @ (((unsigned) &ECCP2AS)*8) + 3;
#define                                 P2SSAC1_bit         BANKMASK(ECCP2AS), 3
extern volatile __bit                   P2SSBD0             @ (((unsigned) &ECCP2AS)*8) + 0;
#define                                 P2SSBD0_bit         BANKMASK(ECCP2AS), 0
extern volatile __bit                   P2SSBD1             @ (((unsigned) &ECCP2AS)*8) + 1;
#define                                 P2SSBD1_bit         BANKMASK(ECCP2AS), 1
extern volatile __bit                   P3B                 @ (((unsigned) &PORTC)*8) + 7;
#define                                 P3B_bit             BANKMASK(PORTC), 7
extern volatile __bit                   P3DC0               @ (((unsigned) &PWM3CON)*8) + 0;
#define                                 P3DC0_bit           BANKMASK(PWM3CON), 0
extern volatile __bit                   P3DC1               @ (((unsigned) &PWM3CON)*8) + 1;
#define                                 P3DC1_bit           BANKMASK(PWM3CON), 1
extern volatile __bit                   P3DC2               @ (((unsigned) &PWM3CON)*8) + 2;
#define                                 P3DC2_bit           BANKMASK(PWM3CON), 2
extern volatile __bit                   P3DC3               @ (((unsigned) &PWM3CON)*8) + 3;
#define                                 P3DC3_bit           BANKMASK(PWM3CON), 3
extern volatile __bit                   P3DC4               @ (((unsigned) &PWM3CON)*8) + 4;
#define                                 P3DC4_bit           BANKMASK(PWM3CON), 4
extern volatile __bit                   P3DC5               @ (((unsigned) &PWM3CON)*8) + 5;
#define                                 P3DC5_bit           BANKMASK(PWM3CON), 5
extern volatile __bit                   P3DC6               @ (((unsigned) &PWM3CON)*8) + 6;
#define                                 P3DC6_bit           BANKMASK(PWM3CON), 6
extern volatile __bit                   P3M0                @ (((unsigned) &CCP3CON)*8) + 6;
#define                                 P3M0_bit            BANKMASK(CCP3CON), 6
extern volatile __bit                   P3M1                @ (((unsigned) &CCP3CON)*8) + 7;
#define                                 P3M1_bit            BANKMASK(CCP3CON), 7
extern volatile __bit                   P3RSEN              @ (((unsigned) &PWM3CON)*8) + 7;
#define                                 P3RSEN_bit          BANKMASK(PWM3CON), 7
extern volatile __bit                   P3SSAC0             @ (((unsigned) &ECCP3AS)*8) + 2;
#define                                 P3SSAC0_bit         BANKMASK(ECCP3AS), 2
extern volatile __bit                   P3SSAC1             @ (((unsigned) &ECCP3AS)*8) + 3;
#define                                 P3SSAC1_bit         BANKMASK(ECCP3AS), 3
extern volatile __bit                   P3SSBD0             @ (((unsigned) &ECCP3AS)*8) + 0;
#define                                 P3SSBD0_bit         BANKMASK(ECCP3AS), 0
extern volatile __bit                   P3SSBD1             @ (((unsigned) &ECCP3AS)*8) + 1;
#define                                 P3SSBD1_bit         BANKMASK(ECCP3AS), 1
extern volatile __bit                   PA1                 @ (((unsigned) &PORTC)*8) + 2;
#define                                 PA1_bit             BANKMASK(PORTC), 2
extern volatile __bit                   PA2                 @ (((unsigned) &PORTC)*8) + 1;
#define                                 PA2_bit             BANKMASK(PORTC), 1
extern volatile __bit                   PC3E                @ (((unsigned) &PORTE)*8) + 3;
#define                                 PC3E_bit            BANKMASK(PORTE), 3
extern volatile __bit                   PD                  @ (((unsigned) &RCON)*8) + 2;
#define                                 PD_bit              BANKMASK(RCON), 2
extern volatile __bit                   PDC0                @ (((unsigned) &PWM1CON)*8) + 0;
#define                                 PDC0_bit            BANKMASK(PWM1CON), 0
extern volatile __bit                   PDC1                @ (((unsigned) &PWM1CON)*8) + 1;
#define                                 PDC1_bit            BANKMASK(PWM1CON), 1
extern volatile __bit                   PDC2                @ (((unsigned) &PWM1CON)*8) + 2;
#define                                 PDC2_bit            BANKMASK(PWM1CON), 2
extern volatile __bit                   PDC3                @ (((unsigned) &PWM1CON)*8) + 3;
#define                                 PDC3_bit            BANKMASK(PWM1CON), 3
extern volatile __bit                   PDC4                @ (((unsigned) &PWM1CON)*8) + 4;
#define                                 PDC4_bit            BANKMASK(PWM1CON), 4
extern volatile __bit                   PDC5                @ (((unsigned) &PWM1CON)*8) + 5;
#define                                 PDC5_bit            BANKMASK(PWM1CON), 5
extern volatile __bit                   PDC6                @ (((unsigned) &PWM1CON)*8) + 6;
#define                                 PDC6_bit            BANKMASK(PWM1CON), 6
extern volatile __bit                   PEIE                @ (((unsigned) &INTCON)*8) + 6;
#define                                 PEIE_bit            BANKMASK(INTCON), 6
extern volatile __bit                   PEIE_GIEL           @ (((unsigned) &INTCON)*8) + 6;
#define                                 PEIE_GIEL_bit       BANKMASK(INTCON), 6
extern volatile __bit                   PEN1                @ (((unsigned) &SSP1CON2)*8) + 2;
#define                                 PEN1_bit            BANKMASK(SSP1CON2), 2
extern volatile __bit                   PEN2                @ (((unsigned) &SSP2CON2)*8) + 2;
#define                                 PEN2_bit            BANKMASK(SSP2CON2), 2
extern volatile __bit                   PGC                 @ (((unsigned) &PORTB)*8) + 6;
#define                                 PGC_bit             BANKMASK(PORTB), 6
extern volatile __bit                   PGD                 @ (((unsigned) &PORTB)*8) + 7;
#define                                 PGD_bit             BANKMASK(PORTB), 7
extern volatile __bit                   PLLEN               @ (((unsigned) &OSCTUNE)*8) + 6;
#define                                 PLLEN_bit           BANKMASK(OSCTUNE), 6
extern volatile __bit                   PLLRDY              @ (((unsigned) &OSCCON2)*8) + 7;
#define                                 PLLRDY_bit          BANKMASK(OSCCON2), 7
extern volatile __bit                   POR                 @ (((unsigned) &RCON)*8) + 1;
#define                                 POR_bit             BANKMASK(RCON), 1
extern volatile __bit                   PRISD               @ (((unsigned) &OSCCON2)*8) + 2;
#define                                 PRISD_bit           BANKMASK(OSCCON2), 2
extern volatile __bit                   PRSEN               @ (((unsigned) &PWM1CON)*8) + 7;
#define                                 PRSEN_bit           BANKMASK(PWM1CON), 7
extern volatile __bit                   PSA                 @ (((unsigned) &T0CON)*8) + 3;
#define                                 PSA_bit             BANKMASK(T0CON), 3
extern volatile __bit                   PSS1AC0             @ (((unsigned) &ECCP1AS)*8) + 2;
#define                                 PSS1AC0_bit         BANKMASK(ECCP1AS), 2
extern volatile __bit                   PSS1AC1             @ (((unsigned) &ECCP1AS)*8) + 3;
#define                                 PSS1AC1_bit         BANKMASK(ECCP1AS), 3
extern volatile __bit                   PSS1BD0             @ (((unsigned) &ECCP1AS)*8) + 0;
#define                                 PSS1BD0_bit         BANKMASK(ECCP1AS), 0
extern volatile __bit                   PSS1BD1             @ (((unsigned) &ECCP1AS)*8) + 1;
#define                                 PSS1BD1_bit         BANKMASK(ECCP1AS), 1
extern volatile __bit                   PSS2AC0             @ (((unsigned) &ECCP2AS)*8) + 2;
#define                                 PSS2AC0_bit         BANKMASK(ECCP2AS), 2
extern volatile __bit                   PSS2AC1             @ (((unsigned) &ECCP2AS)*8) + 3;
#define                                 PSS2AC1_bit         BANKMASK(ECCP2AS), 3
extern volatile __bit                   PSS2BD0             @ (((unsigned) &ECCP2AS)*8) + 0;
#define                                 PSS2BD0_bit         BANKMASK(ECCP2AS), 0
extern volatile __bit                   PSS2BD1             @ (((unsigned) &ECCP2AS)*8) + 1;
#define                                 PSS2BD1_bit         BANKMASK(ECCP2AS), 1
extern volatile __bit                   PSS3AC0             @ (((unsigned) &ECCP3AS)*8) + 2;
#define                                 PSS3AC0_bit         BANKMASK(ECCP3AS), 2
extern volatile __bit                   PSS3AC1             @ (((unsigned) &ECCP3AS)*8) + 3;
#define                                 PSS3AC1_bit         BANKMASK(ECCP3AS), 3
extern volatile __bit                   PSS3BD0             @ (((unsigned) &ECCP3AS)*8) + 0;
#define                                 PSS3BD0_bit         BANKMASK(ECCP3AS), 0
extern volatile __bit                   PSS3BD1             @ (((unsigned) &ECCP3AS)*8) + 1;
#define                                 PSS3BD1_bit         BANKMASK(ECCP3AS), 1
extern volatile __bit                   PSSAC0              @ (((unsigned) &ECCP1AS)*8) + 2;
#define                                 PSSAC0_bit          BANKMASK(ECCP1AS), 2
extern volatile __bit                   PSSAC1              @ (((unsigned) &ECCP1AS)*8) + 3;
#define                                 PSSAC1_bit          BANKMASK(ECCP1AS), 3
extern volatile __bit                   PSSBD0              @ (((unsigned) &ECCP1AS)*8) + 0;
#define                                 PSSBD0_bit          BANKMASK(ECCP1AS), 0
extern volatile __bit                   PSSBD1              @ (((unsigned) &ECCP1AS)*8) + 1;
#define                                 PSSBD1_bit          BANKMASK(ECCP1AS), 1
extern volatile __bit                   PVCFG0              @ (((unsigned) &ADCON1)*8) + 2;
#define                                 PVCFG0_bit          BANKMASK(ADCON1), 2
extern volatile __bit                   PVCFG1              @ (((unsigned) &ADCON1)*8) + 3;
#define                                 PVCFG1_bit          BANKMASK(ADCON1), 3
extern volatile __bit                   RBIE                @ (((unsigned) &INTCON)*8) + 3;
#define                                 RBIE_bit            BANKMASK(INTCON), 3
extern volatile __bit                   RBIF                @ (((unsigned) &INTCON)*8) + 0;
#define                                 RBIF_bit            BANKMASK(INTCON), 0
extern volatile __bit                   RBIP                @ (((unsigned) &INTCON2)*8) + 0;
#define                                 RBIP_bit            BANKMASK(INTCON2), 0
extern volatile __bit                   RBPU                @ (((unsigned) &INTCON2)*8) + 7;
#define                                 RBPU_bit            BANKMASK(INTCON2), 7
extern volatile __bit                   RC1IE               @ (((unsigned) &PIE1)*8) + 5;
#define                                 RC1IE_bit           BANKMASK(PIE1), 5
extern volatile __bit                   RC1IF               @ (((unsigned) &PIR1)*8) + 5;
#define                                 RC1IF_bit           BANKMASK(PIR1), 5
extern volatile __bit                   RC1IP               @ (((unsigned) &IPR1)*8) + 5;
#define                                 RC1IP_bit           BANKMASK(IPR1), 5
extern volatile __bit                   RC2IE               @ (((unsigned) &PIE3)*8) + 5;
#define                                 RC2IE_bit           BANKMASK(PIE3), 5
extern volatile __bit                   RC2IF               @ (((unsigned) &PIR3)*8) + 5;
#define                                 RC2IF_bit           BANKMASK(PIR3), 5
extern volatile __bit                   RC2IP               @ (((unsigned) &IPR3)*8) + 5;
#define                                 RC2IP_bit           BANKMASK(IPR3), 5
extern volatile __bit                   RC8_9               @ (((unsigned) &RCSTA1)*8) + 6;
#define                                 RC8_9_bit           BANKMASK(RCSTA1), 6
extern volatile __bit                   RC8_92              @ (((unsigned) &RCSTA2)*8) + 6;
#define                                 RC8_92_bit          BANKMASK(RCSTA2), 6
extern volatile __bit                   RC9                 @ (((unsigned) &RCSTA1)*8) + 6;
#define                                 RC9_bit             BANKMASK(RCSTA1), 6
extern volatile __bit                   RC92                @ (((unsigned) &RCSTA2)*8) + 6;
#define                                 RC92_bit            BANKMASK(RCSTA2), 6
extern volatile __bit                   RCD8                @ (((unsigned) &RCSTA1)*8) + 0;
#define                                 RCD8_bit            BANKMASK(RCSTA1), 0
extern volatile __bit                   RCD82               @ (((unsigned) &RCSTA2)*8) + 0;
#define                                 RCD82_bit           BANKMASK(RCSTA2), 0
extern volatile __bit                   RCEN1               @ (((unsigned) &SSP1CON2)*8) + 3;
#define                                 RCEN1_bit           BANKMASK(SSP1CON2), 3
extern volatile __bit                   RCEN2               @ (((unsigned) &SSP2CON2)*8) + 3;
#define                                 RCEN2_bit           BANKMASK(SSP2CON2), 3
extern volatile __bit                   RCIDL1              @ (((unsigned) &BAUDCON1)*8) + 6;
#define                                 RCIDL1_bit          BANKMASK(BAUDCON1), 6
extern volatile __bit                   RCIDL2              @ (((unsigned) &BAUDCON2)*8) + 6;
#define                                 RCIDL2_bit          BANKMASK(BAUDCON2), 6
extern volatile __bit                   RCIE                @ (((unsigned) &PIE1)*8) + 5;
#define                                 RCIE_bit            BANKMASK(PIE1), 5
extern volatile __bit                   RCIF                @ (((unsigned) &PIR1)*8) + 5;
#define                                 RCIF_bit            BANKMASK(PIR1), 5
extern volatile __bit                   RCIP                @ (((unsigned) &IPR1)*8) + 5;
#define                                 RCIP_bit            BANKMASK(IPR1), 5
extern volatile __bit                   RCMT                @ (((unsigned) &BAUDCON1)*8) + 6;
#define                                 RCMT_bit            BANKMASK(BAUDCON1), 6
extern volatile __bit                   RCMT1               @ (((unsigned) &BAUDCON1)*8) + 6;
#define                                 RCMT1_bit           BANKMASK(BAUDCON1), 6
extern volatile __bit                   RCMT2               @ (((unsigned) &BAUDCON2)*8) + 6;
#define                                 RCMT2_bit           BANKMASK(BAUDCON2), 6
extern volatile __bit                   RD                  @ (((unsigned) &EECON1)*8) + 0;
#define                                 RD_bit              BANKMASK(EECON1), 0
extern volatile __bit                   RD16                @ (((unsigned) &T1CON)*8) + 1;
#define                                 RD16_bit            BANKMASK(T1CON), 1
extern volatile __bit                   RD163               @ (((unsigned) &T3CON)*8) + 7;
#define                                 RD163_bit           BANKMASK(T3CON), 7
extern volatile __bit                   RD165               @ (((unsigned) &T5CON)*8) + 1;
#define                                 RD165_bit           BANKMASK(T5CON), 1
extern volatile __bit                   RE3                 @ (((unsigned) &PORTE)*8) + 3;
#define                                 RE3_bit             BANKMASK(PORTE), 3
extern volatile __bit                   READ_WRITE          @ (((unsigned) &SSP1STAT)*8) + 2;
#define                                 READ_WRITE_bit      BANKMASK(SSP1STAT), 2
extern volatile __bit                   READ_WRITE2         @ (((unsigned) &SSP2STAT)*8) + 2;
#define                                 READ_WRITE2_bit     BANKMASK(SSP2STAT), 2
extern volatile __bit                   RI                  @ (((unsigned) &RCON)*8) + 4;
#define                                 RI_bit              BANKMASK(RCON), 4
extern volatile __bit                   RJPU                @ (((unsigned) &PORTA)*8) + 7;
#define                                 RJPU_bit            BANKMASK(PORTA), 7
extern volatile __bit                   RSEN1               @ (((unsigned) &SSP1CON2)*8) + 1;
#define                                 RSEN1_bit           BANKMASK(SSP1CON2), 1
extern volatile __bit                   RSEN2               @ (((unsigned) &SSP2CON2)*8) + 1;
#define                                 RSEN2_bit           BANKMASK(SSP2CON2), 1
extern volatile __bit                   RW                  @ (((unsigned) &SSP1STAT)*8) + 2;
#define                                 RW_bit              BANKMASK(SSP1STAT), 2
extern volatile __bit                   RW1                 @ (((unsigned) &SSP1STAT)*8) + 2;
#define                                 RW1_bit             BANKMASK(SSP1STAT), 2
extern volatile __bit                   RW2                 @ (((unsigned) &SSP2STAT)*8) + 2;
#define                                 RW2_bit             BANKMASK(SSP2STAT), 2
extern volatile __bit                   RX                  @ (((unsigned) &PORTC)*8) + 7;
#define                                 RX_bit              BANKMASK(PORTC), 7
extern volatile __bit                   RX1                 @ (((unsigned) &PORTC)*8) + 7;
#define                                 RX1_bit             BANKMASK(PORTC), 7
extern volatile __bit                   RX2                 @ (((unsigned) &PORTB)*8) + 7;
#define                                 RX2_bit             BANKMASK(PORTB), 7
extern volatile __bit                   RX91                @ (((unsigned) &RCSTA1)*8) + 6;
#define                                 RX91_bit            BANKMASK(RCSTA1), 6
extern volatile __bit                   RX92                @ (((unsigned) &RCSTA2)*8) + 6;
#define                                 RX92_bit            BANKMASK(RCSTA2), 6
extern volatile __bit                   RX9D1               @ (((unsigned) &RCSTA1)*8) + 0;
#define                                 RX9D1_bit           BANKMASK(RCSTA1), 0
extern volatile __bit                   RX9D2               @ (((unsigned) &RCSTA2)*8) + 0;
#define                                 RX9D2_bit           BANKMASK(RCSTA2), 0
extern volatile __bit                   RXB0IE              @ (((unsigned) &PIE3)*8) + 0;
#define                                 RXB0IE_bit          BANKMASK(PIE3), 0
extern volatile __bit                   RXB1IE              @ (((unsigned) &PIE3)*8) + 1;
#define                                 RXB1IE_bit          BANKMASK(PIE3), 1
extern volatile __bit                   RXBNIE              @ (((unsigned) &PIE3)*8) + 1;
#define                                 RXBNIE_bit          BANKMASK(PIE3), 1
extern volatile __bit                   RXBNIF              @ (((unsigned) &PIR3)*8) + 1;
#define                                 RXBNIF_bit          BANKMASK(PIR3), 1
extern volatile __bit                   RXBNIP              @ (((unsigned) &IPR3)*8) + 1;
#define                                 RXBNIP_bit          BANKMASK(IPR3), 1
extern volatile __bit                   RXCKP               @ (((unsigned) &BAUDCON1)*8) + 5;
#define                                 RXCKP_bit           BANKMASK(BAUDCON1), 5
extern volatile __bit                   RXDTP               @ (((unsigned) &BAUDCON1)*8) + 5;
#define                                 RXDTP_bit           BANKMASK(BAUDCON1), 5
extern volatile __bit                   RXDTP1              @ (((unsigned) &BAUDCON1)*8) + 5;
#define                                 RXDTP1_bit          BANKMASK(BAUDCON1), 5
extern volatile __bit                   RXDTP2              @ (((unsigned) &BAUDCON2)*8) + 5;
#define                                 RXDTP2_bit          BANKMASK(BAUDCON2), 5
extern volatile __bit                   R_NOT_W2            @ (((unsigned) &SSP2STAT)*8) + 2;
#define                                 R_NOT_W2_bit        BANKMASK(SSP2STAT), 2
extern volatile __bit                   R_W2                @ (((unsigned) &SSP2STAT)*8) + 2;
#define                                 R_W2_bit            BANKMASK(SSP2STAT), 2
extern volatile __bit                   R_nW2               @ (((unsigned) &SSP2STAT)*8) + 2;
#define                                 R_nW2_bit           BANKMASK(SSP2STAT), 2
extern volatile __bit                   S2                  @ (((unsigned) &SSP2STAT)*8) + 3;
#define                                 S2_bit              BANKMASK(SSP2STAT), 3
extern volatile __bit                   SBOREN              @ (((unsigned) &RCON)*8) + 6;
#define                                 SBOREN_bit          BANKMASK(RCON), 6
extern volatile __bit                   SCK                 @ (((unsigned) &PORTC)*8) + 3;
#define                                 SCK_bit             BANKMASK(PORTC), 3
extern volatile __bit                   SCK1                @ (((unsigned) &PORTC)*8) + 3;
#define                                 SCK1_bit            BANKMASK(PORTC), 3
extern volatile __bit                   SCK2                @ (((unsigned) &PORTB)*8) + 1;
#define                                 SCK2_bit            BANKMASK(PORTB), 1
extern volatile __bit                   SCKP1               @ (((unsigned) &BAUDCON1)*8) + 4;
#define                                 SCKP1_bit           BANKMASK(BAUDCON1), 4
extern volatile __bit                   SCKP2               @ (((unsigned) &BAUDCON2)*8) + 4;
#define                                 SCKP2_bit           BANKMASK(BAUDCON2), 4
extern volatile __bit                   SCL                 @ (((unsigned) &PORTC)*8) + 3;
#define                                 SCL_bit             BANKMASK(PORTC), 3
extern volatile __bit                   SCL1                @ (((unsigned) &PORTC)*8) + 3;
#define                                 SCL1_bit            BANKMASK(PORTC), 3
extern volatile __bit                   SCL2                @ (((unsigned) &PORTB)*8) + 1;
#define                                 SCL2_bit            BANKMASK(PORTB), 1
extern volatile __bit                   SCS0                @ (((unsigned) &OSCCON)*8) + 0;
#define                                 SCS0_bit            BANKMASK(OSCCON), 0
extern volatile __bit                   SCS1                @ (((unsigned) &OSCCON)*8) + 1;
#define                                 SCS1_bit            BANKMASK(OSCCON), 1
extern volatile __bit                   SDA                 @ (((unsigned) &PORTC)*8) + 4;
#define                                 SDA_bit             BANKMASK(PORTC), 4
extern volatile __bit                   SDA1                @ (((unsigned) &PORTC)*8) + 4;
#define                                 SDA1_bit            BANKMASK(PORTC), 4
extern volatile __bit                   SDA2                @ (((unsigned) &PORTB)*8) + 2;
#define                                 SDA2_bit            BANKMASK(PORTB), 2
extern volatile __bit                   SDI                 @ (((unsigned) &PORTC)*8) + 4;
#define                                 SDI_bit             BANKMASK(PORTC), 4
extern volatile __bit                   SDI1                @ (((unsigned) &PORTC)*8) + 4;
#define                                 SDI1_bit            BANKMASK(PORTC), 4
extern volatile __bit                   SDI2                @ (((unsigned) &PORTB)*8) + 2;
#define                                 SDI2_bit            BANKMASK(PORTB), 2
extern volatile __bit                   SDO                 @ (((unsigned) &PORTC)*8) + 5;
#define                                 SDO_bit             BANKMASK(PORTC), 5
extern volatile __bit                   SDO1                @ (((unsigned) &PORTC)*8) + 5;
#define                                 SDO1_bit            BANKMASK(PORTC), 5
extern volatile __bit                   SDO2                @ (((unsigned) &PORTB)*8) + 3;
#define                                 SDO2_bit            BANKMASK(PORTB), 3
extern volatile __bit                   SEN1                @ (((unsigned) &SSP1CON2)*8) + 0;
#define                                 SEN1_bit            BANKMASK(SSP1CON2), 0
extern volatile __bit                   SEN2                @ (((unsigned) &SSP2CON2)*8) + 0;
#define                                 SEN2_bit            BANKMASK(SSP2CON2), 0
extern volatile __bit                   SENDB1              @ (((unsigned) &TXSTA1)*8) + 3;
#define                                 SENDB1_bit          BANKMASK(TXSTA1), 3
extern volatile __bit                   SENDB2              @ (((unsigned) &TXSTA2)*8) + 3;
#define                                 SENDB2_bit          BANKMASK(TXSTA2), 3
extern volatile __bit                   SLRA                @ (((unsigned) &SLRCON)*8) + 0;
#define                                 SLRA_bit            BANKMASK(SLRCON), 0
extern volatile __bit                   SLRB                @ (((unsigned) &SLRCON)*8) + 1;
#define                                 SLRB_bit            BANKMASK(SLRCON), 1
extern volatile __bit                   SLRC                @ (((unsigned) &SLRCON)*8) + 2;
#define                                 SLRC_bit            BANKMASK(SLRCON), 2
extern volatile __bit                   SMP1                @ (((unsigned) &SSP1STAT)*8) + 7;
#define                                 SMP1_bit            BANKMASK(SSP1STAT), 7
extern volatile __bit                   SMP2                @ (((unsigned) &SSP2STAT)*8) + 7;
#define                                 SMP2_bit            BANKMASK(SSP2STAT), 7
extern volatile __bit                   SOSCEN              @ (((unsigned) &T1CON)*8) + 3;
#define                                 SOSCEN_bit          BANKMASK(T1CON), 3
extern volatile __bit                   SOSCEN3             @ (((unsigned) &T3CON)*8) + 3;
#define                                 SOSCEN3_bit         BANKMASK(T3CON), 3
extern volatile __bit                   SOSCEN5             @ (((unsigned) &T5CON)*8) + 3;
#define                                 SOSCEN5_bit         BANKMASK(T5CON), 3
extern volatile __bit                   SOSCGO              @ (((unsigned) &OSCCON2)*8) + 3;
#define                                 SOSCGO_bit          BANKMASK(OSCCON2), 3
extern volatile __bit                   SOSCRUN             @ (((unsigned) &OSCCON2)*8) + 6;
#define                                 SOSCRUN_bit         BANKMASK(OSCCON2), 6
extern volatile __bit                   SP0                 @ (((unsigned) &STKPTR)*8) + 0;
#define                                 SP0_bit             BANKMASK(STKPTR), 0
extern volatile __bit                   SP1                 @ (((unsigned) &STKPTR)*8) + 1;
#define                                 SP1_bit             BANKMASK(STKPTR), 1
extern volatile __bit                   SP2                 @ (((unsigned) &STKPTR)*8) + 2;
#define                                 SP2_bit             BANKMASK(STKPTR), 2
extern volatile __bit                   SP3                 @ (((unsigned) &STKPTR)*8) + 3;
#define                                 SP3_bit             BANKMASK(STKPTR), 3
extern volatile __bit                   SP4                 @ (((unsigned) &STKPTR)*8) + 4;
#define                                 SP4_bit             BANKMASK(STKPTR), 4
extern volatile __bit                   SPEN1               @ (((unsigned) &RCSTA1)*8) + 7;
#define                                 SPEN1_bit           BANKMASK(RCSTA1), 7
extern volatile __bit                   SPEN2               @ (((unsigned) &RCSTA2)*8) + 7;
#define                                 SPEN2_bit           BANKMASK(RCSTA2), 7
extern volatile __bit                   SPI1MD              @ (((unsigned) &PMD0)*8) + 1;
#define                                 SPI1MD_bit          BANKMASK(PMD0), 1
extern volatile __bit                   SPI2MD              @ (((unsigned) &PMD0)*8) + 2;
#define                                 SPI2MD_bit          BANKMASK(PMD0), 2
extern volatile __bit                   SRCLK0              @ (((unsigned) &SRCON0)*8) + 4;
#define                                 SRCLK0_bit          BANKMASK(SRCON0), 4
extern volatile __bit                   SRCLK1              @ (((unsigned) &SRCON0)*8) + 5;
#define                                 SRCLK1_bit          BANKMASK(SRCON0), 5
extern volatile __bit                   SRCLK2              @ (((unsigned) &SRCON0)*8) + 6;
#define                                 SRCLK2_bit          BANKMASK(SRCON0), 6
extern volatile __bit                   SREN1               @ (((unsigned) &RCSTA1)*8) + 5;
#define                                 SREN1_bit           BANKMASK(RCSTA1), 5
extern volatile __bit                   SREN2               @ (((unsigned) &RCSTA2)*8) + 5;
#define                                 SREN2_bit           BANKMASK(RCSTA2), 5
extern volatile __bit                   SRENA               @ (((unsigned) &RCSTA1)*8) + 5;
#define                                 SRENA_bit           BANKMASK(RCSTA1), 5
extern volatile __bit                   SRI                 @ (((unsigned) &PORTB)*8) + 0;
#define                                 SRI_bit             BANKMASK(PORTB), 0
extern volatile __bit                   SRLEN               @ (((unsigned) &SRCON0)*8) + 7;
#define                                 SRLEN_bit           BANKMASK(SRCON0), 7
extern volatile __bit                   SRNQ                @ (((unsigned) &PORTA)*8) + 5;
#define                                 SRNQ_bit            BANKMASK(PORTA), 5
extern volatile __bit                   SRNQEN              @ (((unsigned) &SRCON0)*8) + 2;
#define                                 SRNQEN_bit          BANKMASK(SRCON0), 2
extern volatile __bit                   SRPR                @ (((unsigned) &SRCON0)*8) + 0;
#define                                 SRPR_bit            BANKMASK(SRCON0), 0
extern volatile __bit                   SRPS                @ (((unsigned) &SRCON0)*8) + 1;
#define                                 SRPS_bit            BANKMASK(SRCON0), 1
extern volatile __bit                   SRQ                 @ (((unsigned) &PORTA)*8) + 4;
#define                                 SRQ_bit             BANKMASK(PORTA), 4
extern volatile __bit                   SRQEN               @ (((unsigned) &SRCON0)*8) + 3;
#define                                 SRQEN_bit           BANKMASK(SRCON0), 3
extern volatile __bit                   SRRC1E              @ (((unsigned) &SRCON1)*8) + 0;
#define                                 SRRC1E_bit          BANKMASK(SRCON1), 0
extern volatile __bit                   SRRC2E              @ (((unsigned) &SRCON1)*8) + 1;
#define                                 SRRC2E_bit          BANKMASK(SRCON1), 1
extern volatile __bit                   SRRCKE              @ (((unsigned) &SRCON1)*8) + 2;
#define                                 SRRCKE_bit          BANKMASK(SRCON1), 2
extern volatile __bit                   SRRPE               @ (((unsigned) &SRCON1)*8) + 3;
#define                                 SRRPE_bit           BANKMASK(SRCON1), 3
extern volatile __bit                   SRSC1E              @ (((unsigned) &SRCON1)*8) + 4;
#define                                 SRSC1E_bit          BANKMASK(SRCON1), 4
extern volatile __bit                   SRSC2E              @ (((unsigned) &SRCON1)*8) + 5;
#define                                 SRSC2E_bit          BANKMASK(SRCON1), 5
extern volatile __bit                   SRSCKE              @ (((unsigned) &SRCON1)*8) + 6;
#define                                 SRSCKE_bit          BANKMASK(SRCON1), 6
extern volatile __bit                   SRSPE               @ (((unsigned) &SRCON1)*8) + 7;
#define                                 SRSPE_bit           BANKMASK(SRCON1), 7
extern volatile __bit                   SS                  @ (((unsigned) &PORTA)*8) + 5;
#define                                 SS_bit              BANKMASK(PORTA), 5
extern volatile __bit                   SS1                 @ (((unsigned) &PORTA)*8) + 5;
#define                                 SS1_bit             BANKMASK(PORTA), 5
extern volatile __bit                   SS2                 @ (((unsigned) &PORTB)*8) + 0;
#define                                 SS2_bit             BANKMASK(PORTB), 0
extern volatile __bit                   SSP1IE              @ (((unsigned) &PIE1)*8) + 3;
#define                                 SSP1IE_bit          BANKMASK(PIE1), 3
extern volatile __bit                   SSP1IF              @ (((unsigned) &PIR1)*8) + 3;
#define                                 SSP1IF_bit          BANKMASK(PIR1), 3
extern volatile __bit                   SSP1IP              @ (((unsigned) &IPR1)*8) + 3;
#define                                 SSP1IP_bit          BANKMASK(IPR1), 3
extern volatile __bit                   SSP2IE              @ (((unsigned) &PIE3)*8) + 7;
#define                                 SSP2IE_bit          BANKMASK(PIE3), 7
extern volatile __bit                   SSP2IF              @ (((unsigned) &PIR3)*8) + 7;
#define                                 SSP2IF_bit          BANKMASK(PIR3), 7
extern volatile __bit                   SSP2IP              @ (((unsigned) &IPR3)*8) + 7;
#define                                 SSP2IP_bit          BANKMASK(IPR3), 7
extern volatile __bit                   SSPEN1              @ (((unsigned) &SSP1CON1)*8) + 5;
#define                                 SSPEN1_bit          BANKMASK(SSP1CON1), 5
extern volatile __bit                   SSPEN2              @ (((unsigned) &SSP2CON1)*8) + 5;
#define                                 SSPEN2_bit          BANKMASK(SSP2CON1), 5
extern volatile __bit                   SSPIE               @ (((unsigned) &PIE1)*8) + 3;
#define                                 SSPIE_bit           BANKMASK(PIE1), 3
extern volatile __bit                   SSPIF               @ (((unsigned) &PIR1)*8) + 3;
#define                                 SSPIF_bit           BANKMASK(PIR1), 3
extern volatile __bit                   SSPIP               @ (((unsigned) &IPR1)*8) + 3;
#define                                 SSPIP_bit           BANKMASK(IPR1), 3
extern volatile __bit                   SSPM01              @ (((unsigned) &SSP1CON1)*8) + 0;
#define                                 SSPM01_bit          BANKMASK(SSP1CON1), 0
extern volatile __bit                   SSPM02              @ (((unsigned) &SSP2CON1)*8) + 0;
#define                                 SSPM02_bit          BANKMASK(SSP2CON1), 0
extern volatile __bit                   SSPM11              @ (((unsigned) &SSP1CON1)*8) + 1;
#define                                 SSPM11_bit          BANKMASK(SSP1CON1), 1
extern volatile __bit                   SSPM12              @ (((unsigned) &SSP2CON1)*8) + 1;
#define                                 SSPM12_bit          BANKMASK(SSP2CON1), 1
extern volatile __bit                   SSPM21              @ (((unsigned) &SSP1CON1)*8) + 2;
#define                                 SSPM21_bit          BANKMASK(SSP1CON1), 2
extern volatile __bit                   SSPM22              @ (((unsigned) &SSP2CON1)*8) + 2;
#define                                 SSPM22_bit          BANKMASK(SSP2CON1), 2
extern volatile __bit                   SSPM31              @ (((unsigned) &SSP1CON1)*8) + 3;
#define                                 SSPM31_bit          BANKMASK(SSP1CON1), 3
extern volatile __bit                   SSPM32              @ (((unsigned) &SSP2CON1)*8) + 3;
#define                                 SSPM32_bit          BANKMASK(SSP2CON1), 3
extern volatile __bit                   SSPOV1              @ (((unsigned) &SSP1CON1)*8) + 6;
#define                                 SSPOV1_bit          BANKMASK(SSP1CON1), 6
extern volatile __bit                   SSPOV2              @ (((unsigned) &SSP2CON1)*8) + 6;
#define                                 SSPOV2_bit          BANKMASK(SSP2CON1), 6
extern volatile __bit                   START               @ (((unsigned) &SSP1STAT)*8) + 3;
#define                                 START_bit           BANKMASK(SSP1STAT), 3
extern volatile __bit                   START1              @ (((unsigned) &SSP1STAT)*8) + 3;
#define                                 START1_bit          BANKMASK(SSP1STAT), 3
extern volatile __bit                   START2              @ (((unsigned) &SSP2STAT)*8) + 3;
#define                                 START2_bit          BANKMASK(SSP2STAT), 3
extern volatile __bit                   STKFUL              @ (((unsigned) &STKPTR)*8) + 7;
#define                                 STKFUL_bit          BANKMASK(STKPTR), 7
extern volatile __bit                   STKOVF              @ (((unsigned) &STKPTR)*8) + 7;
#define                                 STKOVF_bit          BANKMASK(STKPTR), 7
extern volatile __bit                   STKPTR0             @ (((unsigned) &STKPTR)*8) + 0;
#define                                 STKPTR0_bit         BANKMASK(STKPTR), 0
extern volatile __bit                   STKPTR1             @ (((unsigned) &STKPTR)*8) + 1;
#define                                 STKPTR1_bit         BANKMASK(STKPTR), 1
extern volatile __bit                   STKPTR2             @ (((unsigned) &STKPTR)*8) + 2;
#define                                 STKPTR2_bit         BANKMASK(STKPTR), 2
extern volatile __bit                   STKPTR3             @ (((unsigned) &STKPTR)*8) + 3;
#define                                 STKPTR3_bit         BANKMASK(STKPTR), 3
extern volatile __bit                   STKPTR4             @ (((unsigned) &STKPTR)*8) + 4;
#define                                 STKPTR4_bit         BANKMASK(STKPTR), 4
extern volatile __bit                   STKUNF              @ (((unsigned) &STKPTR)*8) + 6;
#define                                 STKUNF_bit          BANKMASK(STKPTR), 6
extern volatile __bit                   STOP                @ (((unsigned) &SSP1STAT)*8) + 4;
#define                                 STOP_bit            BANKMASK(SSP1STAT), 4
extern volatile __bit                   STOP1               @ (((unsigned) &SSP1STAT)*8) + 4;
#define                                 STOP1_bit           BANKMASK(SSP1STAT), 4
extern volatile __bit                   STOP2               @ (((unsigned) &SSP2STAT)*8) + 4;
#define                                 STOP2_bit           BANKMASK(SSP2STAT), 4
extern volatile __bit                   STR1A               @ (((unsigned) &PSTR1CON)*8) + 0;
#define                                 STR1A_bit           BANKMASK(PSTR1CON), 0
extern volatile __bit                   STR1B               @ (((unsigned) &PSTR1CON)*8) + 1;
#define                                 STR1B_bit           BANKMASK(PSTR1CON), 1
extern volatile __bit                   STR1C               @ (((unsigned) &PSTR1CON)*8) + 2;
#define                                 STR1C_bit           BANKMASK(PSTR1CON), 2
extern volatile __bit                   STR1D               @ (((unsigned) &PSTR1CON)*8) + 3;
#define                                 STR1D_bit           BANKMASK(PSTR1CON), 3
extern volatile __bit                   STR1SYNC            @ (((unsigned) &PSTR1CON)*8) + 4;
#define                                 STR1SYNC_bit        BANKMASK(PSTR1CON), 4
extern volatile __bit                   STR2A               @ (((unsigned) &PSTR2CON)*8) + 0;
#define                                 STR2A_bit           BANKMASK(PSTR2CON), 0
extern volatile __bit                   STR2B               @ (((unsigned) &PSTR2CON)*8) + 1;
#define                                 STR2B_bit           BANKMASK(PSTR2CON), 1
extern volatile __bit                   STR2C               @ (((unsigned) &PSTR2CON)*8) + 2;
#define                                 STR2C_bit           BANKMASK(PSTR2CON), 2
extern volatile __bit                   STR2D               @ (((unsigned) &PSTR2CON)*8) + 3;
#define                                 STR2D_bit           BANKMASK(PSTR2CON), 3
extern volatile __bit                   STR2SYNC            @ (((unsigned) &PSTR2CON)*8) + 4;
#define                                 STR2SYNC_bit        BANKMASK(PSTR2CON), 4
extern volatile __bit                   STR3A               @ (((unsigned) &PSTR3CON)*8) + 0;
#define                                 STR3A_bit           BANKMASK(PSTR3CON), 0
extern volatile __bit                   STR3B               @ (((unsigned) &PSTR3CON)*8) + 1;
#define                                 STR3B_bit           BANKMASK(PSTR3CON), 1
extern volatile __bit                   STR3C               @ (((unsigned) &PSTR3CON)*8) + 2;
#define                                 STR3C_bit           BANKMASK(PSTR3CON), 2
extern volatile __bit                   STR3D               @ (((unsigned) &PSTR3CON)*8) + 3;
#define                                 STR3D_bit           BANKMASK(PSTR3CON), 3
extern volatile __bit                   STR3SYNC            @ (((unsigned) &PSTR3CON)*8) + 4;
#define                                 STR3SYNC_bit        BANKMASK(PSTR3CON), 4
extern volatile __bit                   STRA                @ (((unsigned) &PSTR1CON)*8) + 0;
#define                                 STRA_bit            BANKMASK(PSTR1CON), 0
extern volatile __bit                   STRA2               @ (((unsigned) &PSTR2CON)*8) + 0;
#define                                 STRA2_bit           BANKMASK(PSTR2CON), 0
extern volatile __bit                   STRA3               @ (((unsigned) &PSTR3CON)*8) + 0;
#define                                 STRA3_bit           BANKMASK(PSTR3CON), 0
extern volatile __bit                   STRB                @ (((unsigned) &PSTR1CON)*8) + 1;
#define                                 STRB_bit            BANKMASK(PSTR1CON), 1
extern volatile __bit                   STRB2               @ (((unsigned) &PSTR2CON)*8) + 1;
#define                                 STRB2_bit           BANKMASK(PSTR2CON), 1
extern volatile __bit                   STRB3               @ (((unsigned) &PSTR3CON)*8) + 1;
#define                                 STRB3_bit           BANKMASK(PSTR3CON), 1
extern volatile __bit                   STRC                @ (((unsigned) &PSTR1CON)*8) + 2;
#define                                 STRC_bit            BANKMASK(PSTR1CON), 2
extern volatile __bit                   STRC2               @ (((unsigned) &PSTR2CON)*8) + 2;
#define                                 STRC2_bit           BANKMASK(PSTR2CON), 2
extern volatile __bit                   STRC3               @ (((unsigned) &PSTR3CON)*8) + 2;
#define                                 STRC3_bit           BANKMASK(PSTR3CON), 2
extern volatile __bit                   STRD                @ (((unsigned) &PSTR1CON)*8) + 3;
#define                                 STRD_bit            BANKMASK(PSTR1CON), 3
extern volatile __bit                   STRD2               @ (((unsigned) &PSTR2CON)*8) + 3;
#define                                 STRD2_bit           BANKMASK(PSTR2CON), 3
extern volatile __bit                   STRD3               @ (((unsigned) &PSTR3CON)*8) + 3;
#define                                 STRD3_bit           BANKMASK(PSTR3CON), 3
extern volatile __bit                   STRSYNC             @ (((unsigned) &PSTR1CON)*8) + 4;
#define                                 STRSYNC_bit         BANKMASK(PSTR1CON), 4
extern volatile __bit                   STRSYNC2            @ (((unsigned) &PSTR2CON)*8) + 4;
#define                                 STRSYNC2_bit        BANKMASK(PSTR2CON), 4
extern volatile __bit                   STRSYNC3            @ (((unsigned) &PSTR3CON)*8) + 4;
#define                                 STRSYNC3_bit        BANKMASK(PSTR3CON), 4
extern volatile __bit                   SWDTE               @ (((unsigned) &WDTCON)*8) + 0;
#define                                 SWDTE_bit           BANKMASK(WDTCON), 0
extern volatile __bit                   SWDTEN              @ (((unsigned) &WDTCON)*8) + 0;
#define                                 SWDTEN_bit          BANKMASK(WDTCON), 0
extern volatile __bit                   SYNC1               @ (((unsigned) &TXSTA1)*8) + 4;
#define                                 SYNC1_bit           BANKMASK(TXSTA1), 4
extern volatile __bit                   SYNC2               @ (((unsigned) &TXSTA2)*8) + 4;
#define                                 SYNC2_bit           BANKMASK(TXSTA2), 4
extern volatile __bit                   T08BIT              @ (((unsigned) &T0CON)*8) + 6;
#define                                 T08BIT_bit          BANKMASK(T0CON), 6
extern volatile __bit                   T0CKI               @ (((unsigned) &PORTA)*8) + 4;
#define                                 T0CKI_bit           BANKMASK(PORTA), 4
extern volatile __bit                   T0CS                @ (((unsigned) &T0CON)*8) + 5;
#define                                 T0CS_bit            BANKMASK(T0CON), 5
extern volatile __bit                   T0IE                @ (((unsigned) &INTCON)*8) + 5;
#define                                 T0IE_bit            BANKMASK(INTCON), 5
extern volatile __bit                   T0IF                @ (((unsigned) &INTCON)*8) + 2;
#define                                 T0IF_bit            BANKMASK(INTCON), 2
extern volatile __bit                   T0PS0               @ (((unsigned) &T0CON)*8) + 0;
#define                                 T0PS0_bit           BANKMASK(T0CON), 0
extern volatile __bit                   T0PS1               @ (((unsigned) &T0CON)*8) + 1;
#define                                 T0PS1_bit           BANKMASK(T0CON), 1
extern volatile __bit                   T0PS2               @ (((unsigned) &T0CON)*8) + 2;
#define                                 T0PS2_bit           BANKMASK(T0CON), 2
extern volatile __bit                   T0SE                @ (((unsigned) &T0CON)*8) + 4;
#define                                 T0SE_bit            BANKMASK(T0CON), 4
extern volatile __bit                   T1CKI               @ (((unsigned) &PORTC)*8) + 0;
#define                                 T1CKI_bit           BANKMASK(PORTC), 0
extern volatile __bit                   T1CKPS0             @ (((unsigned) &T1CON)*8) + 4;
#define                                 T1CKPS0_bit         BANKMASK(T1CON), 4
extern volatile __bit                   T1CKPS1             @ (((unsigned) &T1CON)*8) + 5;
#define                                 T1CKPS1_bit         BANKMASK(T1CON), 5
extern volatile __bit                   T1G                 @ (((unsigned) &PORTB)*8) + 5;
#define                                 T1G_bit             BANKMASK(PORTB), 5
extern volatile __bit                   T1GGO               @ (((unsigned) &T1GCON)*8) + 3;
#define                                 T1GGO_bit           BANKMASK(T1GCON), 3
extern volatile __bit                   T1GGO_NOT_DONE      @ (((unsigned) &T1GCON)*8) + 3;
#define                                 T1GGO_NOT_DONE_bit  BANKMASK(T1GCON), 3
extern volatile __bit                   T1GGO_nDONE         @ (((unsigned) &T1GCON)*8) + 3;
#define                                 T1GGO_nDONE_bit     BANKMASK(T1GCON), 3
extern volatile __bit                   T1GPOL              @ (((unsigned) &T1GCON)*8) + 6;
#define                                 T1GPOL_bit          BANKMASK(T1GCON), 6
extern volatile __bit                   T1GSPM              @ (((unsigned) &T1GCON)*8) + 4;
#define                                 T1GSPM_bit          BANKMASK(T1GCON), 4
extern volatile __bit                   T1GSS0              @ (((unsigned) &T1GCON)*8) + 0;
#define                                 T1GSS0_bit          BANKMASK(T1GCON), 0
extern volatile __bit                   T1GSS1              @ (((unsigned) &T1GCON)*8) + 1;
#define                                 T1GSS1_bit          BANKMASK(T1GCON), 1
extern volatile __bit                   T1GTM               @ (((unsigned) &T1GCON)*8) + 5;
#define                                 T1GTM_bit           BANKMASK(T1GCON), 5
extern volatile __bit                   T1GVAL              @ (((unsigned) &T1GCON)*8) + 2;
#define                                 T1GVAL_bit          BANKMASK(T1GCON), 2
extern volatile __bit                   T1G_DONE            @ (((unsigned) &T1GCON)*8) + 3;
#define                                 T1G_DONE_bit        BANKMASK(T1GCON), 3
extern volatile __bit                   T1OSCEN             @ (((unsigned) &T1CON)*8) + 3;
#define                                 T1OSCEN_bit         BANKMASK(T1CON), 3
extern volatile __bit                   T1OSI               @ (((unsigned) &PORTC)*8) + 1;
#define                                 T1OSI_bit           BANKMASK(PORTC), 1
extern volatile __bit                   T1OSO               @ (((unsigned) &PORTC)*8) + 0;
#define                                 T1OSO_bit           BANKMASK(PORTC), 0
extern volatile __bit                   T1RD16              @ (((unsigned) &T1CON)*8) + 1;
#define                                 T1RD16_bit          BANKMASK(T1CON), 1
extern volatile __bit                   T1SOSCEN            @ (((unsigned) &T1CON)*8) + 3;
#define                                 T1SOSCEN_bit        BANKMASK(T1CON), 3
extern volatile __bit                   T1SYNC              @ (((unsigned) &T1CON)*8) + 2;
#define                                 T1SYNC_bit          BANKMASK(T1CON), 2
extern volatile __bit                   T2CKPS0             @ (((unsigned) &T2CON)*8) + 0;
#define                                 T2CKPS0_bit         BANKMASK(T2CON), 0
extern volatile __bit                   T2CKPS1             @ (((unsigned) &T2CON)*8) + 1;
#define                                 T2CKPS1_bit         BANKMASK(T2CON), 1
extern volatile __bit                   T2OUTPS0            @ (((unsigned) &T2CON)*8) + 3;
#define                                 T2OUTPS0_bit        BANKMASK(T2CON), 3
extern volatile __bit                   T2OUTPS1            @ (((unsigned) &T2CON)*8) + 4;
#define                                 T2OUTPS1_bit        BANKMASK(T2CON), 4
extern volatile __bit                   T2OUTPS2            @ (((unsigned) &T2CON)*8) + 5;
#define                                 T2OUTPS2_bit        BANKMASK(T2CON), 5
extern volatile __bit                   T2OUTPS3            @ (((unsigned) &T2CON)*8) + 6;
#define                                 T2OUTPS3_bit        BANKMASK(T2CON), 6
extern volatile __bit                   T3CKPS0             @ (((unsigned) &T3CON)*8) + 4;
#define                                 T3CKPS0_bit         BANKMASK(T3CON), 4
extern volatile __bit                   T3CKPS1             @ (((unsigned) &T3CON)*8) + 5;
#define                                 T3CKPS1_bit         BANKMASK(T3CON), 5
extern volatile __bit                   T3G                 @ (((unsigned) &PORTC)*8) + 0;
#define                                 T3G_bit             BANKMASK(PORTC), 0
extern volatile __bit                   T3GGO               @ (((unsigned) &T3GCON)*8) + 3;
#define                                 T3GGO_bit           BANKMASK(T3GCON), 3
extern volatile __bit                   T3GGO_NOT_DONE      @ (((unsigned) &T3GCON)*8) + 3;
#define                                 T3GGO_NOT_DONE_bit  BANKMASK(T3GCON), 3
extern volatile __bit                   T3GGO_nDONE         @ (((unsigned) &T3GCON)*8) + 3;
#define                                 T3GGO_nDONE_bit     BANKMASK(T3GCON), 3
extern volatile __bit                   T3GPOL              @ (((unsigned) &T3GCON)*8) + 6;
#define                                 T3GPOL_bit          BANKMASK(T3GCON), 6
extern volatile __bit                   T3GSPM              @ (((unsigned) &T3GCON)*8) + 4;
#define                                 T3GSPM_bit          BANKMASK(T3GCON), 4
extern volatile __bit                   T3GSS0              @ (((unsigned) &T3GCON)*8) + 0;
#define                                 T3GSS0_bit          BANKMASK(T3GCON), 0
extern volatile __bit                   T3GSS1              @ (((unsigned) &T3GCON)*8) + 1;
#define                                 T3GSS1_bit          BANKMASK(T3GCON), 1
extern volatile __bit                   T3GTM               @ (((unsigned) &T3GCON)*8) + 5;
#define                                 T3GTM_bit           BANKMASK(T3GCON), 5
extern volatile __bit                   T3GVAL              @ (((unsigned) &T3GCON)*8) + 2;
#define                                 T3GVAL_bit          BANKMASK(T3GCON), 2
extern volatile __bit                   T3G_DONE            @ (((unsigned) &T3GCON)*8) + 3;
#define                                 T3G_DONE_bit        BANKMASK(T3GCON), 3
extern volatile __bit                   T3OSCEN             @ (((unsigned) &T3CON)*8) + 3;
#define                                 T3OSCEN_bit         BANKMASK(T3CON), 3
extern volatile __bit                   T3RD16              @ (((unsigned) &T3CON)*8) + 1;
#define                                 T3RD16_bit          BANKMASK(T3CON), 1
extern volatile __bit                   T3SOSCEN            @ (((unsigned) &T3CON)*8) + 3;
#define                                 T3SOSCEN_bit        BANKMASK(T3CON), 3
extern volatile __bit                   T4CKPS0             @ (((unsigned) &T4CON)*8) + 0;
#define                                 T4CKPS0_bit         BANKMASK(T4CON), 0
extern volatile __bit                   T4CKPS1             @ (((unsigned) &T4CON)*8) + 1;
#define                                 T4CKPS1_bit         BANKMASK(T4CON), 1
extern volatile __bit                   T4OUTPS0            @ (((unsigned) &T4CON)*8) + 3;
#define                                 T4OUTPS0_bit        BANKMASK(T4CON), 3
extern volatile __bit                   T4OUTPS1            @ (((unsigned) &T4CON)*8) + 4;
#define                                 T4OUTPS1_bit        BANKMASK(T4CON), 4
extern volatile __bit                   T4OUTPS2            @ (((unsigned) &T4CON)*8) + 5;
#define                                 T4OUTPS2_bit        BANKMASK(T4CON), 5
extern volatile __bit                   T4OUTPS3            @ (((unsigned) &T4CON)*8) + 6;
#define                                 T4OUTPS3_bit        BANKMASK(T4CON), 6
extern volatile __bit                   T5CKI               @ (((unsigned) &PORTC)*8) + 2;
#define                                 T5CKI_bit           BANKMASK(PORTC), 2
extern volatile __bit                   T5CKPS0             @ (((unsigned) &T5CON)*8) + 4;
#define                                 T5CKPS0_bit         BANKMASK(T5CON), 4
extern volatile __bit                   T5CKPS1             @ (((unsigned) &T5CON)*8) + 5;
#define                                 T5CKPS1_bit         BANKMASK(T5CON), 5
extern volatile __bit                   T5G                 @ (((unsigned) &PORTB)*8) + 4;
#define                                 T5G_bit             BANKMASK(PORTB), 4
extern volatile __bit                   T5GGO               @ (((unsigned) &T5GCON)*8) + 3;
#define                                 T5GGO_bit           BANKMASK(T5GCON), 3
extern volatile __bit                   T5GGO_NOT_DONE      @ (((unsigned) &T5GCON)*8) + 3;
#define                                 T5GGO_NOT_DONE_bit  BANKMASK(T5GCON), 3
extern volatile __bit                   T5GGO_nDONE         @ (((unsigned) &T5GCON)*8) + 3;
#define                                 T5GGO_nDONE_bit     BANKMASK(T5GCON), 3
extern volatile __bit                   T5GPOL              @ (((unsigned) &T5GCON)*8) + 6;
#define                                 T5GPOL_bit          BANKMASK(T5GCON), 6
extern volatile __bit                   T5GSPM              @ (((unsigned) &T5GCON)*8) + 4;
#define                                 T5GSPM_bit          BANKMASK(T5GCON), 4
extern volatile __bit                   T5GSS0              @ (((unsigned) &T5GCON)*8) + 0;
#define                                 T5GSS0_bit          BANKMASK(T5GCON), 0
extern volatile __bit                   T5GSS1              @ (((unsigned) &T5GCON)*8) + 1;
#define                                 T5GSS1_bit          BANKMASK(T5GCON), 1
extern volatile __bit                   T5GTM               @ (((unsigned) &T5GCON)*8) + 5;
#define                                 T5GTM_bit           BANKMASK(T5GCON), 5
extern volatile __bit                   T5GVAL              @ (((unsigned) &T5GCON)*8) + 2;
#define                                 T5GVAL_bit          BANKMASK(T5GCON), 2
extern volatile __bit                   T5G_DONE            @ (((unsigned) &T5GCON)*8) + 3;
#define                                 T5G_DONE_bit        BANKMASK(T5GCON), 3
extern volatile __bit                   T5RD16              @ (((unsigned) &T5CON)*8) + 1;
#define                                 T5RD16_bit          BANKMASK(T5CON), 1
extern volatile __bit                   T5SOSCEN            @ (((unsigned) &T5CON)*8) + 3;
#define                                 T5SOSCEN_bit        BANKMASK(T5CON), 3
extern volatile __bit                   T5SYNC              @ (((unsigned) &T5CON)*8) + 2;
#define                                 T5SYNC_bit          BANKMASK(T5CON), 2
extern volatile __bit                   T6CKPS0             @ (((unsigned) &T6CON)*8) + 0;
#define                                 T6CKPS0_bit         BANKMASK(T6CON), 0
extern volatile __bit                   T6CKPS1             @ (((unsigned) &T6CON)*8) + 1;
#define                                 T6CKPS1_bit         BANKMASK(T6CON), 1
extern volatile __bit                   T6OUTPS0            @ (((unsigned) &T6CON)*8) + 3;
#define                                 T6OUTPS0_bit        BANKMASK(T6CON), 3
extern volatile __bit                   T6OUTPS1            @ (((unsigned) &T6CON)*8) + 4;
#define                                 T6OUTPS1_bit        BANKMASK(T6CON), 4
extern volatile __bit                   T6OUTPS2            @ (((unsigned) &T6CON)*8) + 5;
#define                                 T6OUTPS2_bit        BANKMASK(T6CON), 5
extern volatile __bit                   T6OUTPS3            @ (((unsigned) &T6CON)*8) + 6;
#define                                 T6OUTPS3_bit        BANKMASK(T6CON), 6
extern volatile __bit                   TGEN                @ (((unsigned) &CTMUCONH)*8) + 4;
#define                                 TGEN_bit            BANKMASK(CTMUCONH), 4
extern volatile __bit                   TMR0IE              @ (((unsigned) &INTCON)*8) + 5;
#define                                 TMR0IE_bit          BANKMASK(INTCON), 5
extern volatile __bit                   TMR0IF              @ (((unsigned) &INTCON)*8) + 2;
#define                                 TMR0IF_bit          BANKMASK(INTCON), 2
extern volatile __bit                   TMR0IP              @ (((unsigned) &INTCON2)*8) + 2;
#define                                 TMR0IP_bit          BANKMASK(INTCON2), 2
extern volatile __bit                   TMR0ON              @ (((unsigned) &T0CON)*8) + 7;
#define                                 TMR0ON_bit          BANKMASK(T0CON), 7
extern volatile __bit                   TMR1CS0             @ (((unsigned) &T1CON)*8) + 6;
#define                                 TMR1CS0_bit         BANKMASK(T1CON), 6
extern volatile __bit                   TMR1CS1             @ (((unsigned) &T1CON)*8) + 7;
#define                                 TMR1CS1_bit         BANKMASK(T1CON), 7
extern volatile __bit                   TMR1GE              @ (((unsigned) &T1GCON)*8) + 7;
#define                                 TMR1GE_bit          BANKMASK(T1GCON), 7
extern volatile __bit                   TMR1GIE             @ (((unsigned) &PIE3)*8) + 0;
#define                                 TMR1GIE_bit         BANKMASK(PIE3), 0
extern volatile __bit                   TMR1GIF             @ (((unsigned) &PIR3)*8) + 0;
#define                                 TMR1GIF_bit         BANKMASK(PIR3), 0
extern volatile __bit                   TMR1GIP             @ (((unsigned) &IPR3)*8) + 0;
#define                                 TMR1GIP_bit         BANKMASK(IPR3), 0
extern volatile __bit                   TMR1IE              @ (((unsigned) &PIE1)*8) + 0;
#define                                 TMR1IE_bit          BANKMASK(PIE1), 0
extern volatile __bit                   TMR1IF              @ (((unsigned) &PIR1)*8) + 0;
#define                                 TMR1IF_bit          BANKMASK(PIR1), 0
extern volatile __bit                   TMR1IP              @ (((unsigned) &IPR1)*8) + 0;
#define                                 TMR1IP_bit          BANKMASK(IPR1), 0
extern volatile __bit                   TMR1MD              @ (((unsigned) &PMD0)*8) + 0;
#define                                 TMR1MD_bit          BANKMASK(PMD0), 0
extern volatile __bit                   TMR1ON              @ (((unsigned) &T1CON)*8) + 0;
#define                                 TMR1ON_bit          BANKMASK(T1CON), 0
extern volatile __bit                   TMR2IE              @ (((unsigned) &PIE1)*8) + 1;
#define                                 TMR2IE_bit          BANKMASK(PIE1), 1
extern volatile __bit                   TMR2IF              @ (((unsigned) &PIR1)*8) + 1;
#define                                 TMR2IF_bit          BANKMASK(PIR1), 1
extern volatile __bit                   TMR2IP              @ (((unsigned) &IPR1)*8) + 1;
#define                                 TMR2IP_bit          BANKMASK(IPR1), 1
extern volatile __bit                   TMR2MD              @ (((unsigned) &PMD0)*8) + 1;
#define                                 TMR2MD_bit          BANKMASK(PMD0), 1
extern volatile __bit                   TMR2ON              @ (((unsigned) &T2CON)*8) + 2;
#define                                 TMR2ON_bit          BANKMASK(T2CON), 2
extern volatile __bit                   TMR3CS0             @ (((unsigned) &T3CON)*8) + 6;
#define                                 TMR3CS0_bit         BANKMASK(T3CON), 6
extern volatile __bit                   TMR3CS1             @ (((unsigned) &T3CON)*8) + 7;
#define                                 TMR3CS1_bit         BANKMASK(T3CON), 7
extern volatile __bit                   TMR3GE              @ (((unsigned) &T3GCON)*8) + 7;
#define                                 TMR3GE_bit          BANKMASK(T3GCON), 7
extern volatile __bit                   TMR3GIE             @ (((unsigned) &PIE3)*8) + 1;
#define                                 TMR3GIE_bit         BANKMASK(PIE3), 1
extern volatile __bit                   TMR3GIF             @ (((unsigned) &PIR3)*8) + 1;
#define                                 TMR3GIF_bit         BANKMASK(PIR3), 1
extern volatile __bit                   TMR3GIP             @ (((unsigned) &IPR3)*8) + 1;
#define                                 TMR3GIP_bit         BANKMASK(IPR3), 1
extern volatile __bit                   TMR3IE              @ (((unsigned) &PIE2)*8) + 1;
#define                                 TMR3IE_bit          BANKMASK(PIE2), 1
extern volatile __bit                   TMR3IF              @ (((unsigned) &PIR2)*8) + 1;
#define                                 TMR3IF_bit          BANKMASK(PIR2), 1
extern volatile __bit                   TMR3IP              @ (((unsigned) &IPR2)*8) + 1;
#define                                 TMR3IP_bit          BANKMASK(IPR2), 1
extern volatile __bit                   TMR3MD              @ (((unsigned) &PMD0)*8) + 2;
#define                                 TMR3MD_bit          BANKMASK(PMD0), 2
extern volatile __bit                   TMR3ON              @ (((unsigned) &T3CON)*8) + 0;
#define                                 TMR3ON_bit          BANKMASK(T3CON), 0
extern volatile __bit                   TMR4IE              @ (((unsigned) &PIE5)*8) + 0;
#define                                 TMR4IE_bit          BANKMASK(PIE5), 0
extern volatile __bit                   TMR4IF              @ (((unsigned) &PIR5)*8) + 0;
#define                                 TMR4IF_bit          BANKMASK(PIR5), 0
extern volatile __bit                   TMR4IP              @ (((unsigned) &IPR5)*8) + 0;
#define                                 TMR4IP_bit          BANKMASK(IPR5), 0
extern volatile __bit                   TMR4MD              @ (((unsigned) &PMD0)*8) + 3;
#define                                 TMR4MD_bit          BANKMASK(PMD0), 3
extern volatile __bit                   TMR4ON              @ (((unsigned) &T4CON)*8) + 2;
#define                                 TMR4ON_bit          BANKMASK(T4CON), 2
extern volatile __bit                   TMR5CS0             @ (((unsigned) &T5CON)*8) + 6;
#define                                 TMR5CS0_bit         BANKMASK(T5CON), 6
extern volatile __bit                   TMR5CS1             @ (((unsigned) &T5CON)*8) + 7;
#define                                 TMR5CS1_bit         BANKMASK(T5CON), 7
extern volatile __bit                   TMR5GE              @ (((unsigned) &T5GCON)*8) + 7;
#define                                 TMR5GE_bit          BANKMASK(T5GCON), 7
extern volatile __bit                   TMR5GIE             @ (((unsigned) &PIE3)*8) + 2;
#define                                 TMR5GIE_bit         BANKMASK(PIE3), 2
extern volatile __bit                   TMR5GIF             @ (((unsigned) &PIR3)*8) + 2;
#define                                 TMR5GIF_bit         BANKMASK(PIR3), 2
extern volatile __bit                   TMR5GIP             @ (((unsigned) &IPR3)*8) + 2;
#define                                 TMR5GIP_bit         BANKMASK(IPR3), 2
extern volatile __bit                   TMR5IE              @ (((unsigned) &PIE5)*8) + 1;
#define                                 TMR5IE_bit          BANKMASK(PIE5), 1
extern volatile __bit                   TMR5IF              @ (((unsigned) &PIR5)*8) + 1;
#define                                 TMR5IF_bit          BANKMASK(PIR5), 1
extern volatile __bit                   TMR5IP              @ (((unsigned) &IPR5)*8) + 1;
#define                                 TMR5IP_bit          BANKMASK(IPR5), 1
extern volatile __bit                   TMR5MD              @ (((unsigned) &PMD0)*8) + 4;
#define                                 TMR5MD_bit          BANKMASK(PMD0), 4
extern volatile __bit                   TMR5ON              @ (((unsigned) &T5CON)*8) + 0;
#define                                 TMR5ON_bit          BANKMASK(T5CON), 0
extern volatile __bit                   TMR6IE              @ (((unsigned) &PIE5)*8) + 2;
#define                                 TMR6IE_bit          BANKMASK(PIE5), 2
extern volatile __bit                   TMR6IF              @ (((unsigned) &PIR5)*8) + 2;
#define                                 TMR6IF_bit          BANKMASK(PIR5), 2
extern volatile __bit                   TMR6IP              @ (((unsigned) &IPR5)*8) + 2;
#define                                 TMR6IP_bit          BANKMASK(IPR5), 2
extern volatile __bit                   TMR6MD              @ (((unsigned) &PMD0)*8) + 5;
#define                                 TMR6MD_bit          BANKMASK(PMD0), 5
extern volatile __bit                   TMR6ON              @ (((unsigned) &T6CON)*8) + 2;
#define                                 TMR6ON_bit          BANKMASK(T6CON), 2
extern volatile __bit                   TO                  @ (((unsigned) &RCON)*8) + 3;
#define                                 TO_bit              BANKMASK(RCON), 3
extern volatile __bit                   TRIGSEL             @ (((unsigned) &ADCON1)*8) + 7;
#define                                 TRIGSEL_bit         BANKMASK(ADCON1), 7
extern volatile __bit                   TRISA0              @ (((unsigned) &TRISA)*8) + 0;
#define                                 TRISA0_bit          BANKMASK(TRISA), 0
extern volatile __bit                   TRISA1              @ (((unsigned) &TRISA)*8) + 1;
#define                                 TRISA1_bit          BANKMASK(TRISA), 1
extern volatile __bit                   TRISA2              @ (((unsigned) &TRISA)*8) + 2;
#define                                 TRISA2_bit          BANKMASK(TRISA), 2
extern volatile __bit                   TRISA3              @ (((unsigned) &TRISA)*8) + 3;
#define                                 TRISA3_bit          BANKMASK(TRISA), 3
extern volatile __bit                   TRISA4              @ (((unsigned) &TRISA)*8) + 4;
#define                                 TRISA4_bit          BANKMASK(TRISA), 4
extern volatile __bit                   TRISA5              @ (((unsigned) &TRISA)*8) + 5;
#define                                 TRISA5_bit          BANKMASK(TRISA), 5
extern volatile __bit                   TRISA6              @ (((unsigned) &TRISA)*8) + 6;
#define                                 TRISA6_bit          BANKMASK(TRISA), 6
extern volatile __bit                   TRISA7              @ (((unsigned) &TRISA)*8) + 7;
#define                                 TRISA7_bit          BANKMASK(TRISA), 7
extern volatile __bit                   TRISB0              @ (((unsigned) &TRISB)*8) + 0;
#define                                 TRISB0_bit          BANKMASK(TRISB), 0
extern volatile __bit                   TRISB1              @ (((unsigned) &TRISB)*8) + 1;
#define                                 TRISB1_bit          BANKMASK(TRISB), 1
extern volatile __bit                   TRISB2              @ (((unsigned) &TRISB)*8) + 2;
#define                                 TRISB2_bit          BANKMASK(TRISB), 2
extern volatile __bit                   TRISB3              @ (((unsigned) &TRISB)*8) + 3;
#define                                 TRISB3_bit          BANKMASK(TRISB), 3
extern volatile __bit                   TRISB4              @ (((unsigned) &TRISB)*8) + 4;
#define                                 TRISB4_bit          BANKMASK(TRISB), 4
extern volatile __bit                   TRISB5              @ (((unsigned) &TRISB)*8) + 5;
#define                                 TRISB5_bit          BANKMASK(TRISB), 5
extern volatile __bit                   TRISB6              @ (((unsigned) &TRISB)*8) + 6;
#define                                 TRISB6_bit          BANKMASK(TRISB), 6
extern volatile __bit                   TRISB7              @ (((unsigned) &TRISB)*8) + 7;
#define                                 TRISB7_bit          BANKMASK(TRISB), 7
extern volatile __bit                   TRISC0              @ (((unsigned) &TRISC)*8) + 0;
#define                                 TRISC0_bit          BANKMASK(TRISC), 0
extern volatile __bit                   TRISC1              @ (((unsigned) &TRISC)*8) + 1;
#define                                 TRISC1_bit          BANKMASK(TRISC), 1
extern volatile __bit                   TRISC2              @ (((unsigned) &TRISC)*8) + 2;
#define                                 TRISC2_bit          BANKMASK(TRISC), 2
extern volatile __bit                   TRISC3              @ (((unsigned) &TRISC)*8) + 3;
#define                                 TRISC3_bit          BANKMASK(TRISC), 3
extern volatile __bit                   TRISC4              @ (((unsigned) &TRISC)*8) + 4;
#define                                 TRISC4_bit          BANKMASK(TRISC), 4
extern volatile __bit                   TRISC5              @ (((unsigned) &TRISC)*8) + 5;
#define                                 TRISC5_bit          BANKMASK(TRISC), 5
extern volatile __bit                   TRISC6              @ (((unsigned) &TRISC)*8) + 6;
#define                                 TRISC6_bit          BANKMASK(TRISC), 6
extern volatile __bit                   TRISC7              @ (((unsigned) &TRISC)*8) + 7;
#define                                 TRISC7_bit          BANKMASK(TRISC), 7
extern volatile __bit                   TRMT1               @ (((unsigned) &TXSTA1)*8) + 1;
#define                                 TRMT1_bit           BANKMASK(TXSTA1), 1
extern volatile __bit                   TRMT2               @ (((unsigned) &TXSTA2)*8) + 1;
#define                                 TRMT2_bit           BANKMASK(TXSTA2), 1
extern volatile __bit                   TUN0                @ (((unsigned) &OSCTUNE)*8) + 0;
#define                                 TUN0_bit            BANKMASK(OSCTUNE), 0
extern volatile __bit                   TUN1                @ (((unsigned) &OSCTUNE)*8) + 1;
#define                                 TUN1_bit            BANKMASK(OSCTUNE), 1
extern volatile __bit                   TUN2                @ (((unsigned) &OSCTUNE)*8) + 2;
#define                                 TUN2_bit            BANKMASK(OSCTUNE), 2
extern volatile __bit                   TUN3                @ (((unsigned) &OSCTUNE)*8) + 3;
#define                                 TUN3_bit            BANKMASK(OSCTUNE), 3
extern volatile __bit                   TUN4                @ (((unsigned) &OSCTUNE)*8) + 4;
#define                                 TUN4_bit            BANKMASK(OSCTUNE), 4
extern volatile __bit                   TUN5                @ (((unsigned) &OSCTUNE)*8) + 5;
#define                                 TUN5_bit            BANKMASK(OSCTUNE), 5
extern volatile __bit                   TX                  @ (((unsigned) &PORTC)*8) + 6;
#define                                 TX_bit              BANKMASK(PORTC), 6
extern volatile __bit                   TX1                 @ (((unsigned) &PORTC)*8) + 6;
#define                                 TX1_bit             BANKMASK(PORTC), 6
extern volatile __bit                   TX1IE               @ (((unsigned) &PIE1)*8) + 4;
#define                                 TX1IE_bit           BANKMASK(PIE1), 4
extern volatile __bit                   TX1IF               @ (((unsigned) &PIR1)*8) + 4;
#define                                 TX1IF_bit           BANKMASK(PIR1), 4
extern volatile __bit                   TX1IP               @ (((unsigned) &IPR1)*8) + 4;
#define                                 TX1IP_bit           BANKMASK(IPR1), 4
extern volatile __bit                   TX2                 @ (((unsigned) &PORTB)*8) + 6;
#define                                 TX2_bit             BANKMASK(PORTB), 6
extern volatile __bit                   TX2IE               @ (((unsigned) &PIE3)*8) + 4;
#define                                 TX2IE_bit           BANKMASK(PIE3), 4
extern volatile __bit                   TX2IF               @ (((unsigned) &PIR3)*8) + 4;
#define                                 TX2IF_bit           BANKMASK(PIR3), 4
extern volatile __bit                   TX2IP               @ (((unsigned) &IPR3)*8) + 4;
#define                                 TX2IP_bit           BANKMASK(IPR3), 4
extern volatile __bit                   TX8_9               @ (((unsigned) &TXSTA1)*8) + 6;
#define                                 TX8_9_bit           BANKMASK(TXSTA1), 6
extern volatile __bit                   TX8_92              @ (((unsigned) &TXSTA2)*8) + 6;
#define                                 TX8_92_bit          BANKMASK(TXSTA2), 6
extern volatile __bit                   TX91                @ (((unsigned) &TXSTA1)*8) + 6;
#define                                 TX91_bit            BANKMASK(TXSTA1), 6
extern volatile __bit                   TX92                @ (((unsigned) &TXSTA2)*8) + 6;
#define                                 TX92_bit            BANKMASK(TXSTA2), 6
extern volatile __bit                   TX9D1               @ (((unsigned) &TXSTA1)*8) + 0;
#define                                 TX9D1_bit           BANKMASK(TXSTA1), 0
extern volatile __bit                   TX9D2               @ (((unsigned) &TXSTA2)*8) + 0;
#define                                 TX9D2_bit           BANKMASK(TXSTA2), 0
extern volatile __bit                   TXB0IE              @ (((unsigned) &PIE3)*8) + 2;
#define                                 TXB0IE_bit          BANKMASK(PIE3), 2
extern volatile __bit                   TXB1IE              @ (((unsigned) &PIE3)*8) + 3;
#define                                 TXB1IE_bit          BANKMASK(PIE3), 3
extern volatile __bit                   TXB2IE              @ (((unsigned) &PIE3)*8) + 4;
#define                                 TXB2IE_bit          BANKMASK(PIE3), 4
extern volatile __bit                   TXBNIE              @ (((unsigned) &PIE3)*8) + 4;
#define                                 TXBNIE_bit          BANKMASK(PIE3), 4
extern volatile __bit                   TXBNIF              @ (((unsigned) &PIR3)*8) + 4;
#define                                 TXBNIF_bit          BANKMASK(PIR3), 4
extern volatile __bit                   TXBNIP              @ (((unsigned) &IPR3)*8) + 4;
#define                                 TXBNIP_bit          BANKMASK(IPR3), 4
extern volatile __bit                   TXCKP               @ (((unsigned) &BAUDCON1)*8) + 4;
#define                                 TXCKP_bit           BANKMASK(BAUDCON1), 4
extern volatile __bit                   TXCKP1              @ (((unsigned) &BAUDCON1)*8) + 4;
#define                                 TXCKP1_bit          BANKMASK(BAUDCON1), 4
extern volatile __bit                   TXCKP2              @ (((unsigned) &BAUDCON2)*8) + 4;
#define                                 TXCKP2_bit          BANKMASK(BAUDCON2), 4
extern volatile __bit                   TXD8                @ (((unsigned) &TXSTA1)*8) + 0;
#define                                 TXD8_bit            BANKMASK(TXSTA1), 0
extern volatile __bit                   TXD82               @ (((unsigned) &TXSTA2)*8) + 0;
#define                                 TXD82_bit           BANKMASK(TXSTA2), 0
extern volatile __bit                   TXEN1               @ (((unsigned) &TXSTA1)*8) + 5;
#define                                 TXEN1_bit           BANKMASK(TXSTA1), 5
extern volatile __bit                   TXEN2               @ (((unsigned) &TXSTA2)*8) + 5;
#define                                 TXEN2_bit           BANKMASK(TXSTA2), 5
extern volatile __bit                   TXIE                @ (((unsigned) &PIE1)*8) + 4;
#define                                 TXIE_bit            BANKMASK(PIE1), 4
extern volatile __bit                   TXIF                @ (((unsigned) &PIR1)*8) + 4;
#define                                 TXIF_bit            BANKMASK(PIR1), 4
extern volatile __bit                   TXIP                @ (((unsigned) &IPR1)*8) + 4;
#define                                 TXIP_bit            BANKMASK(IPR1), 4
extern volatile __bit                   UA1                 @ (((unsigned) &SSP1STAT)*8) + 1;
#define                                 UA1_bit             BANKMASK(SSP1STAT), 1
extern volatile __bit                   UA2                 @ (((unsigned) &SSP2STAT)*8) + 1;
#define                                 UA2_bit             BANKMASK(SSP2STAT), 1
extern volatile __bit                   UART1MD             @ (((unsigned) &PMD0)*8) + 6;
#define                                 UART1MD_bit         BANKMASK(PMD0), 6
extern volatile __bit                   UART2MD             @ (((unsigned) &PMD0)*8) + 7;
#define                                 UART2MD_bit         BANKMASK(PMD0), 7
extern volatile __bit                   ULPWUIN             @ (((unsigned) &PORTA)*8) + 0;
#define                                 ULPWUIN_bit         BANKMASK(PORTA), 0
extern volatile __bit                   VDIRMAG             @ (((unsigned) &HLVDCON)*8) + 7;
#define                                 VDIRMAG_bit         BANKMASK(HLVDCON), 7
extern volatile __bit                   VPP                 @ (((unsigned) &PORTE)*8) + 3;
#define                                 VPP_bit             BANKMASK(PORTE), 3
extern volatile __bit                   VREFM               @ (((unsigned) &PORTA)*8) + 2;
#define                                 VREFM_bit           BANKMASK(PORTA), 2
extern volatile __bit                   VREFN               @ (((unsigned) &PORTA)*8) + 2;
#define                                 VREFN_bit           BANKMASK(PORTA), 2
extern volatile __bit                   VREFP               @ (((unsigned) &PORTA)*8) + 3;
#define                                 VREFP_bit           BANKMASK(PORTA), 3
extern volatile __bit                   W4E                 @ (((unsigned) &BAUDCON1)*8) + 1;
#define                                 W4E_bit             BANKMASK(BAUDCON1), 1
extern volatile __bit                   WCOL1               @ (((unsigned) &SSP1CON1)*8) + 7;
#define                                 WCOL1_bit           BANKMASK(SSP1CON1), 7
extern volatile __bit                   WCOL2               @ (((unsigned) &SSP2CON1)*8) + 7;
#define                                 WCOL2_bit           BANKMASK(SSP2CON1), 7
extern volatile __bit                   WPUB0               @ (((unsigned) &WPUB)*8) + 0;
#define                                 WPUB0_bit           BANKMASK(WPUB), 0
extern volatile __bit                   WPUB1               @ (((unsigned) &WPUB)*8) + 1;
#define                                 WPUB1_bit           BANKMASK(WPUB), 1
extern volatile __bit                   WPUB2               @ (((unsigned) &WPUB)*8) + 2;
#define                                 WPUB2_bit           BANKMASK(WPUB), 2
extern volatile __bit                   WPUB3               @ (((unsigned) &WPUB)*8) + 3;
#define                                 WPUB3_bit           BANKMASK(WPUB), 3
extern volatile __bit                   WPUB4               @ (((unsigned) &WPUB)*8) + 4;
#define                                 WPUB4_bit           BANKMASK(WPUB), 4
extern volatile __bit                   WPUB5               @ (((unsigned) &WPUB)*8) + 5;
#define                                 WPUB5_bit           BANKMASK(WPUB), 5
extern volatile __bit                   WPUB6               @ (((unsigned) &WPUB)*8) + 6;
#define                                 WPUB6_bit           BANKMASK(WPUB), 6
extern volatile __bit                   WPUB7               @ (((unsigned) &WPUB)*8) + 7;
#define                                 WPUB7_bit           BANKMASK(WPUB), 7
extern volatile __bit                   WPUE3               @ (((unsigned) &TRISE)*8) + 7;
#define                                 WPUE3_bit           BANKMASK(TRISE), 7
extern volatile __bit                   WR                  @ (((unsigned) &EECON1)*8) + 1;
#define                                 WR_bit              BANKMASK(EECON1), 1
extern volatile __bit                   WREN                @ (((unsigned) &EECON1)*8) + 2;
#define                                 WREN_bit            BANKMASK(EECON1), 2
extern volatile __bit                   WRERR               @ (((unsigned) &EECON1)*8) + 3;
#define                                 WRERR_bit           BANKMASK(EECON1), 3
extern volatile __bit                   WUE1                @ (((unsigned) &BAUDCON1)*8) + 1;
#define                                 WUE1_bit            BANKMASK(BAUDCON1), 1
extern volatile __bit                   WUE2                @ (((unsigned) &BAUDCON2)*8) + 1;
#define                                 WUE2_bit            BANKMASK(BAUDCON2), 1
extern volatile __bit                   ZERO                @ (((unsigned) &STATUS)*8) + 2;
#define                                 ZERO_bit            BANKMASK(STATUS), 2
extern volatile __bit                   nA2                 @ (((unsigned) &SSP2STAT)*8) + 5;
#define                                 nA2_bit             BANKMASK(SSP2STAT), 5
extern volatile __bit                   nADDRESS2           @ (((unsigned) &SSP2STAT)*8) + 5;
#define                                 nADDRESS2_bit       BANKMASK(SSP2STAT), 5
extern volatile __bit                   nBOR                @ (((unsigned) &RCON)*8) + 0;
#define                                 nBOR_bit            BANKMASK(RCON), 0
extern volatile __bit                   nDONE               @ (((unsigned) &ADCON0)*8) + 1;
#define                                 nDONE_bit           BANKMASK(ADCON0), 1
extern volatile __bit                   nMCLR               @ (((unsigned) &PORTE)*8) + 3;
#define                                 nMCLR_bit           BANKMASK(PORTE), 3
extern volatile __bit                   nPD                 @ (((unsigned) &RCON)*8) + 2;
#define                                 nPD_bit             BANKMASK(RCON), 2
extern volatile __bit                   nPOR                @ (((unsigned) &RCON)*8) + 1;
#define                                 nPOR_bit            BANKMASK(RCON), 1
extern volatile __bit                   nRBPU               @ (((unsigned) &INTCON2)*8) + 7;
#define                                 nRBPU_bit           BANKMASK(INTCON2), 7
extern volatile __bit                   nRI                 @ (((unsigned) &RCON)*8) + 4;
#define                                 nRI_bit             BANKMASK(RCON), 4
extern volatile __bit                   nSS                 @ (((unsigned) &PORTA)*8) + 5;
#define                                 nSS_bit             BANKMASK(PORTA), 5
extern volatile __bit                   nSS1                @ (((unsigned) &PORTA)*8) + 5;
#define                                 nSS1_bit            BANKMASK(PORTA), 5
extern volatile __bit                   nSS2                @ (((unsigned) &PORTB)*8) + 0;
#define                                 nSS2_bit            BANKMASK(PORTB), 0
extern volatile __bit                   nT1SYNC             @ (((unsigned) &T1CON)*8) + 2;
#define                                 nT1SYNC_bit         BANKMASK(T1CON), 2
extern volatile __bit                   nT3SYNC             @ (((unsigned) &T3CON)*8) + 2;
#define                                 nT3SYNC_bit         BANKMASK(T3CON), 2
extern volatile __bit                   nT5SYNC             @ (((unsigned) &T5CON)*8) + 2;
#define                                 nT5SYNC_bit         BANKMASK(T5CON), 2
extern volatile __bit                   nTO                 @ (((unsigned) &RCON)*8) + 3;
#define                                 nTO_bit             BANKMASK(RCON), 3
extern volatile __bit                   nW2                 @ (((unsigned) &SSP2STAT)*8) + 2;
#define                                 nW2_bit             BANKMASK(SSP2STAT), 2
extern volatile __bit                   nWRITE2             @ (((unsigned) &SSP2STAT)*8) + 2;
#define                                 nWRITE2_bit         BANKMASK(SSP2STAT), 2

#endif // _PIC18F24K22_H_
